如何对查询出来的数据进行自定义排序

img


查询出来的结果根据类型进行排序,组长放在前面,组员放在后面,sql如何实现

  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7710670
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:一条查询sql的完整执行流程(从连接到引擎,穿插涉及到的知识,超详细)
  • 除此之外, 这篇博客: 运维是技术含量最低的岗位吗?自学应该看书还是看视频?答案都在这里!中的 最实用的 SQL 语句收藏,程序员看完这篇就够了! 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 作者:熬过无人问津的日子才会有远方    收藏数:1305⭐️

    每次使用的时候,全靠零散又低效地搜索SQL语句?不如收藏这一篇!

    本文沿着设计一个假想的应用 awesome_app 为主线,从零创建修改数据库,表格,字段属性,索引,字符集,默认值,自增,增删改查,多表查询,内置函数等实用 SQL 语句。(查看详情

  • 您还可以看一下 张旭老师的【造物者】手把手带你做快递管理系统课程中的 【造物者】第九节·快递SQL语句编写小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    针对查询结果按照类型进行排序这个问题,可以通过在SQL中使用CASE语句实现自定义排序。

    具体做法如下:

    SELECT
        *
    FROM
        your_table
    ORDER BY
        CASE type
            WHEN '组长' THEN 0
            WHEN '组员' THEN 1
            ELSE 2 # 如果有其他类型,则排在最后
        END
    

    以上SQL语句会把类型为组长的记录排在前面,组员的记录排在后面,其他类型的记录排在最后。其中CASE语句用来根据类型对所有记录进行自定义排序:如果类型是组长,则返回0,排在所有记录的最前面;如果类型是组员,则返回1,排在组长的后面;如果类型不是组长或组员,则返回2,排在所有记录的最后面。

    当然,需要将上述SQL语句中的 your_tabletype 字段替换成实际表名和类型字段名。

    希望以上解决方案对您有所帮助!

orderby type 就是了

字段不多 就粗暴点 SELECT * FROM 表 ORDER BY FIELD(TYPE,"组长","组员")