這可能是非常基本的,但我沒有經驗與子選擇。MySQL:疑難解答子選擇左連接
我有兩個表:prm_album
和gallery_meta
。 prm_album
存儲每個專輯的名稱和ID,gallery_meta
存儲每個專輯的每個圖像的圖像細節。所涉及的列是這樣的:
prm_album: ID, Name gallery_meta: FileName, AlbumID, FileExt, IsDefault, Created
我試圖合併這兩個查詢 - 一個給我專輯的列表,另一個給了我爲每個專輯的縮略圖信息。我想最終得到一個單一的數組,這裏我可以得到每個專輯的名稱,id,它是默認(或第一個)圖像的信息。
SELECT a.ID, a.Abbr, a.Name, p.FileName, p.FileExt
FROM prm_album a
LEFT JOIN (
SELECT FileName, FileExt
FROM gallery_meta
ORDER BY (IsDefault = 1) DESC, Created ASC
LIMIT 0,1) AS p
ON (a.ID = p.AlbumID)
WHERE 1
當通過控制檯,這會引發錯誤Unknown column 'p.AlbumID' in 'on clause'
。所有的建議讚賞。
沒想到在集團所有的 - 這還允許沒有指定默認值。非常感謝! – Eamonn 2012-08-04 19:06:51
:)我很高興我可以幫助 – 2012-08-04 19:08:31