需要ORDER BY的起点

时间:2012-03-21 19:08:32

标签: php join mysqli

该网站包含图片。这些图像可以排名。对图像进行排名时,值可以是1,2或3.为了保存排名,我有一个表ranking_items。图像显示为缩略图。老板希望我按等级订购。问题是,如何在ranking_items中没有条目的情况下在结果中包含图像?

$db->query("SELECT file_name 
    FROM images, ranking_items 
      WHERE images.id=ranking_items.image_id 
       ORDER BY ranking_items.rank ASC");

2 个答案:

答案 0 :(得分:0)

当您执行FROM table1, table2时,您正在执行JOIN

尝试LEFT JOIN ranking_items表。这将返回所有行,并将NULLS放在连接失败的位置。

SELECT file_name 
FROM images
LEFT JOIN ranking_items ON images.id=ranking_items.image_id 
ORDER BY ranking_items.rank ASC

答案 1 :(得分:0)

SELECT file_name 
FROM images LEFT JOIN ranking_items 
ON images.id=ranking_items.image_id 
ORDER BY ranking_items.rank ASC