You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ANSI SQL排序问题:如何将化学、物理学科结果置于查询末尾?

解决特定学科排序后置的SQL方案

直接补充后的完整SQL语句如下:

SELECT winner, subject
FROM nobel
WHERE yr = 1984 
ORDER BY 
  CASE WHEN subject IN ('chemistry', 'physics') THEN 1 ELSE 0 END,
  subject, 
  winner;

逻辑说明

  • 通过CASE语句生成一个临时排序优先级:将chemistry和physics标记为1,其他学科标记为0。由于SQL默认升序排序,标记为0的学科会排在标记为1的学科之前,实现理化类学科后置的需求。
  • 后续的subject和winner排序保证了同一优先级内的结果按学科名称、获奖者姓名的自然顺序排列。

内容的提问来源于stack exchange,提问作者RJBurillo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 15:10:16