我有2个表,1个表名为googleimage,1个表名为googleimagefound,googleimagefound具有数千行,每行都有一个image_id列,该列对应于其对应于googleimage表(id)的图像,googleimage表中的每个图像可以具有数千行对应从googleimagefound表中获取。
我想做的是从googleimage表中选择所有图像,然后按在googleimagefound表中找到的行数对其进行排序。
例,
googleimage表有3行,其ID为1、2、3
googleimagefound表有100行,其中50行具有image_id 1,其中20行具有image_id,2,其中30行具有image_id 3
我想说
SELECT * FROM googleimage ORDER BY most rows found in googleimagefound table where id = googleimagefound.image_id
任何帮助将被申请
最佳答案
你的意思是这样的:
SELECT count(distinct f.image_id) as mostrowsfound
, i.* FROM googleimage as i
LEFT JOIN googleimagefound as f ON i.id = f.image_id
GROUP BY i.id
ORDER BY mostrowsfound DESC