sql - 在不使用 MAX 和 ORDER BY 的情况下从最高到最低排序
问题描述
我想获得我使用的列的最大计数,并且想在不使用orCount()
的情况下将列从最高到最低排序。max
order by desc
我试过了
SELECT COUNT(subject) AS CNT, student
FROM AUTHOR
GROUP BY student AU1
WHERE not exists (SELECT * FROM AUTHOR AU2
WHERE AU2.student <> AU1.student AND AU2.subject > AU1.CNT)
但它不会返回所需的输出。
所需的输出与
SELECT COUNT(subject) AS CNT, student
FROM AUTHOR
GROUP BY Student
ORDER BY CNT DESC
但是,没有order by desc
or MAX
。
解决方案
您可以使用ORDER BY ASC
:
SELECT COUNT(subject) AS CNT, student
FROM AUTHOR
GROUP BY Student
ORDER BY (- CNT) ASC;
如果您希望结果按特定顺序排列,则需要使用ORDER BY
. 这是使用 SQL 的规则之一。
推荐阅读
- flutter - Flutter Listview builder在热重载之前是空白的
- linux - cloud-init 使用 DHCP 中给定的域作为主机名
- string - 使用 Rust 中的自定义派生宏获取具有任何结构的字段名称的原始 vec
- reactjs - 如何在功能组件上同时使用 withWidth 和 withStyles 作为高阶组件?
- excel - EXCEL INDIRECT 动态地显示工作表和单元格
- r - 1:l 中的错误:Yhat 错误中长度为 0 的参数
- sdk - swashbuckle 可以将一个 swagger 文档序列化为 v2,而将其他文档序列化为 v3?
- php - 视频/mp4 未使用 Webpack、Laravel 8 中的 Laravel Mix 和 reactjs 加载
- javascript - 如何在 Js 中保存 HTML 值
- javascript - onkeydown 使用箭头键向前和向后导航