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

如何对字段进行多次排序?SQL Server表排序需求咨询

解决方案:字段值映射 + 基础排序

首先得澄清一下:你要实现的核心并不是「多次排序」,而是对skills字段进行指定的映射替换,同时保持hobby按id升序排列(也就是原表的顺序)。

实现思路

我们可以用CASE语句来定义skills字段的自定义映射关系,再通过ORDER BY id ASC确保结果按id升序排列(对应hobby的顺序要求)。

最终SQL查询语句

SELECT 
    hobby,
    CASE hobby
        WHEN 'reading' THEN 'programming'
        WHEN 'baking' THEN 'encoding'
        ELSE skills  -- cooking的skills保持原数值不变
    END AS skills,
    organization
FROM hobbies
ORDER BY id ASC;

语句解释

  1. CASE语句:针对不同的hobby值,返回指定的skills内容:
    • 当hobby是reading时,返回programming
    • 当hobby是baking时,返回encoding
    • 其他情况(这里是cooking),直接返回原表的skills值
  2. ORDER BY id ASC:确保结果按id从小到大排列,也就是你要求的hobby字段的升序顺序。

执行这个查询后,就能得到你想要的结果格式啦。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 04:18:55