這是我的查詢,從一個表中獲取模型信息,從另一個表中獲取單個圖片。爲了讓它在ORDER BY排序DESC的地方得到圖片,我必須對這個查詢做些什麼改變?在圖片的表格中,有一個名爲「sort」的字段。每行的字段的默認值爲0.但是一個隨機行的值爲1.我想獲得該特定的行。但是,我不想使用WHERE sort = 1,因爲即使在沒有行具有排序值1的情況下,也應該獲取一行。php mysql內部連接 - 獲取特定行
$sql="SELECT tc.id,tc.alias,tc.firstname,tci.imagename
FROM ".$pre."models tc
INNER JOIN ".$pre."model_images tci ON tc.id=tci.userid
WHERE activated=1 AND sex=$sex AND city=$city AND published=1
GROUP BY tc.id ORDER BY firstname ASC";
預先感謝您!
使用解決:
SELECT tc.id,tc.alias,tc.firstname,
(SELECT imagename FROM ".$pre."model_images WHERE userid= tc.id
ORDER BY sort DESC LIMIT 1) AS imagename
FROM ".$pre."models tc
WHERE tc.activated=1 AND tc.sex=1 AND tc.city=2 AND tc.published=1
ORDER BY tc.firstname ASC
'WHERE sort = 1' –
問題已更新。對困惑感到抱歉。 – salmanhijazi
'ORDER BY排序DESC,名字ASC'? – billyonecan