Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql。基于临时列的排序_Mysql_Ruby On Rails - Fatal编程技术网

mysql。基于临时列的排序

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

我有两个名为相册照片的表,其中评级是照片表中的属性之一

我想知道是否可以根据相册中的照片总数对相册进行排序。应根据ratings属性上的条件生成照片总数

我不想在相册表中添加一个新的列,因为随着收视率的不断变化,照片的数量会根据收视率来计算

  • 相册中的照片总数应在子查询中提取
  • 给它一个有意义的别名,比如说照片数
  • 您可以使用ORDERBY子句中的照片计数。结果将被排序

  • 您可以通过使用内部查询(类似于临时表)实现相同的功能,而不是创建新列

    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