次のようなクエリを使用します:
SELECT id, path, ISNULL(LOAD_FILE(path)) as not_exists
FROM images
HAVING not_exists = 1
関数LOAD_FILE
ファイルを文字列としてロードしようとし、NULL
を返します 失敗したとき。
この場合の失敗は、ファイルが実際に存在していても、mysqlがその特定の場所を読み取れないことが原因である可能性があることに注意してください。
編集:
@ostrokachがコメントで指摘しているように、これは標準のSQLではありませんが、MySQLで許可されていても、標準に従うことができます。
SELECT *
FROM images
WHERE LOAD_FILE(PATH) IS NULL