与昨天的问题类似:
我有一个数据库表'sales_list'。这是属于users_sales_guild_id的销售记录行。我想通过每个用户的'sales_points'字段的SUM查询表并订购结果,最高点到最低点。
我发现另一个关于SO的问题我认为可以解决我的问题 - MySQL: how to sum up vaues of rows and sort the result? - 但它似乎没有完全达到标记。
我认为这个查询可以做到,但是没有...
$total_query = "SELECT users_sales_guild_new_id, SUM(sales_points) AS total_sales_points
FROM sales_list
WHERE sales_entry_date BETWEEN '2013-10-01 00:00:00' AND '2013-12-31 23:59:59'
GROUP BY users_sales_guild_new_id
ORDER BY total_sales_points DESC";
此查询仅返回1条记录。而不是由每个用户按销售点的SUM排序的记录选择。
非常欢迎您的协助。
答案 0 :(得分:1)
试试这个 - >您无法将别名传递给order by。
$total_query = "SELECT users_sales_guild_new_id, SUM(sales_points) AS total_sales_points
FROM sales_list
WHERE sales_entry_date BETWEEN '2013-10-01 00:00:00' AND '2013-12-31 23:59:59'
GROUP BY users_sales_guild_new_id
ORDER BY SUM(sales_points) DESC";