mysql。基于临时列的排序
我有两个名为相册和照片的表,其中评级是照片表中的属性之一 我想知道是否可以根据相册中的照片总数对相册进行排序。应根据ratings属性上的条件生成照片总数 我不想在相册表中添加一个新的列,因为随着收视率的不断变化,照片的数量会根据收视率来计算mysql。基于临时列的排序,mysql,ruby-on-rails,Mysql,Ruby On Rails,我有两个名为相册和照片的表,其中评级是照片表中的属性之一 我想知道是否可以根据相册中的照片总数对相册进行排序。应根据ratings属性上的条件生成照片总数 我不想在相册表中添加一个新的列,因为随着收视率的不断变化,照片的数量会根据收视率来计算 相册中的照片总数应在子查询中提取 给它一个有意义的别名,比如说照片数 您可以使用ORDERBY子句中的照片计数。结果将被排序 您可以通过使用内部查询(类似于临时表)实现相同的功能,而不是创建新列 像 SELECT * FROM album a JOIN (
您可以通过使用内部查询(类似于临时表)实现相同的功能,而不是创建新列 像
SELECT * FROM album a
JOIN ( SELECT yourlogic(rating) AS total_no_photos, album_id FROM photo
WHERE yourlogic
GROUP BY album_id
) temp_photo
ON temp_photo.album_id = a.album_id
ORDER BY total_no_photos