sql - 如何使用 order by x asc 对值进行排序,但如果 x 具有特定数字(例如 3)以使其显示最后一个 sql

标签 sql

我有这个查询

  select name, 
         surname, 
         age 
    from user 
order by idcard asc  

但我希望如果 idcard 具有值 3 这些值将一起显示在列表的 end 中,而其余 1, 2, 4, 5, 6,asc

排序

可以吗?

最佳答案

您可以尝试使用case:

   select ...
 order by case
            when idcard = 3 then 1
            else 0
          end,
          idcard

关于sql - 如何使用 order by x asc 对值进行排序,但如果 x 具有特定数字(例如 3)以使其显示最后一个 sql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72717018/

相关文章:

mysql - 如何避免 LEFT JOIN 查询中的重复记录?

Sqlite:查询计算某行在 'through'表中被引用的次数

sql - 从 SQL Server 中的 JSON 文本中提取值

sql - 替换 SQL Server 2005 游标

mysql - 多对一关系可以用逻辑 ER 图表示吗?

sql - postgresql : extract(epoch function over multiple rows

java - 如何从我的 java 应用程序中启动 derby 服务器

mysql - 使用 dotnet String.Format 将数据保存到数据库失败

sql - 超前/滞后中的偏移子查询

php - 我如何将 "UserID"与 "username"链接起来,以便我可以更新我的表?