mysql - MySQL 中的 ORDER BY 适用于 1 列,但不适用于 2 列

标签 mysql database

我希望按顺序显示计数和职业。我可以做得很好,但是当我将第二列添加到 ORDER BY 语句时就不起作用了。

SELECT CONCAT("There are a total of ", COUNT(occupation), " ", occupation, "s.")
FROM occupations
GROUP BY occupation
ORDER BY COUNT(occupation) ASC, occupation ASC;

这是结果:

There are a total of 3 Doctors. 
There are a total of 4 Actors. 
There are a total of 4 Singers. 
There are a total of 7 Professors.

我尝试反转它们,并且还尝试指定表名称(Occupations.Occupation)以避免任何歧义,但没有任何效果。我需要创建单独的变量吗?

最佳答案

我发布的查询是正确的 - 事实证明应用程序认为它是错误的,因为职业是大写而不是小写

关于mysql - MySQL 中的 ORDER BY 适用于 1 列,但不适用于 2 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46473952/

相关文章:

c# - 即使一切正确,我也收到 C# SQL 连接错误

mysql - 我真的不能编辑 MySQL 触发器,我必须删除它并创建一个新触发器吗?

php - MYSQL 不显示日期和时间已过的结果

database - 哪些数据库系统支持 ENUM 数据类型,哪些不支持?

ruby-on-rails - 使用 Rails/Sinatra 的只读 Web 应用程序

mysql - 错误 1215 : CANNOT ADD FOREIGN KEY CONSTRAINT ; Composite Foreign key

mysql - 如何在 SQL 中按汇总分数对团队进行排序? (两列用 SUM() 排序)

mysql - 如何使用两个分类条件过滤wordpress选择查询?

mysql - 在 Visual Studio 2010 中更新触发器

c# - 在C#中存储读者信息