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

如何在SQLite中实现临时自定义排序(无需额外排序表)

SQLite实现指定排序规则的分组销量统计

可以完全通过SQL实现,无需创建存储排序规则的额外表,核心是利用CASE语句自定义排序优先级,结合字母排序完成需求。

假设你的表名为fruit_sales,包含字段fruit_name(水果名称)和weekly_sales(周销量),对应的SQL查询如下:

SELECT 
    fruit_name,
    SUM(weekly_sales) AS total_sales
FROM fruit_sales
GROUP BY fruit_name
ORDER BY 
    -- 给指定水果分配排序优先级,数字越小越靠前
    CASE fruit_name
        WHEN 'cranberries' THEN 1
        WHEN 'bananas' THEN 2
        WHEN 'strawberries' THEN 3
        ELSE 4
    END,
    -- 其余水果按字母顺序排序
    fruit_name;

逻辑说明:

  • CASE语句为指定的三种水果分配了不同的排序权重,确保它们按蔓越莓→香蕉→草莓的顺序排在最前面
  • 第二个排序条件fruit_name会让不在指定列表中的水果,按照字母顺序进行排序
  • 整个查询无需依赖任何额外表,所有排序规则都内嵌在ORDER BY子句中

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 23:47:08