我在mySQL
中有以下圖像表,它已被提供給我糾正,其中存儲了與一組產品相關的所有圖像。這些圖像已經(大多數已經)或將被調整大小,以便自適應圖像可以在應用程序的前端使用。但是,當前端調用api並檢查請求的產品對象時,某些「主要」圖像似乎沒有「替代品」(調整大小/兒童)。現在我不知道api在通過調整器運行時如何保存這些圖像。我剛被要求檢查表格,以確保所有圖像都有其他尺寸,並儘可能地嘗試看看有什麼不對。爲此,我試圖對圖像表運行查詢以獲取所有沒有「子」的父圖像。MYSQL - 在沒有調整大小的兒童的情況下獲取父圖像
樣例表如下,其中parent_id
鍵是引用主圖像的id
鍵的外鍵。 這種約束被設置在桌子上,其中,****在手置換了的問題,實際值:
CONSTRAINT `****` FOREIGN KEY (`parent_id`) REFERENCES `image` (`id`)
樣品表:
+----+-------+-------------+--------------+--------------+
| id | width | path | publicId | parent_id |
+----+-------+-------------+--------------+--------------+
| 1 | 300 | somewhere | 12 | NULL |
+----+-------+-------------+--------------+--------------+
| 2 | 400 | somewhere2 | 34 | 1 |
+----+-------+-------------+--------------+--------------+
| 3 | 500 | somewhere3 | 56 | 1 |
+----+-------+-------------+--------------+--------------+
| 4 | 200 | somewhere4 | 78 | NULL |
+----+-------+-------------+--------------+--------------+
| 5 | 200 | somewhere5 | 90 | NULL |
+----+-------+-------------+--------------+--------------+
爲了讓所有的家長圖像,而不孩子我用下面的查詢:
SELECT publicId, version, mimeType FROM image i WHERE parent_id IS NULL AND NOT EXISTS (SELECT id FROM image r WHERE r.parent_id = i.id)
有沒有一種方法可以檢查,這其實是在給定的歸國未調整父圖像的右下方數總共有表中的125397行?
對返回的數據進行正面和負面測試,以便在查詢中獲得舒適。但是,查詢似乎是正確的。 – Shadow
好的。萬分感謝。你可以補充說,作爲答案,我可以接受它是正確的嗎? – hyprstack