sql想查询一个数据放在第一个位置

sql想查询一个数据放在第一个位置

背景:比如在查询后台账号的时候想将管理员账号始终放在第一个,其他账号按照创建时间倒序排序,

可以这样写sql:

复制代码
SELECT
	id,
	create_time 
FROM
	`user` 
ORDER BY
CASE
	
	WHEN id = 1 THEN
	1 ELSE 2 
	END ASC,
create_time DESC

运行截图:

可以看到id为1始终在第一个位置,这是因为判断排序的时候第一个条件先生效,因此按照升序排序的话id为1 的数据被赋值为1,其他数据被赋值为2,其他数据就只能根据create_time字段进行排序;

相关推荐
唐青枫21 小时前
MySQL JSON 实战详解:从存储、查询、更新到 JSON_TABLE 与索引
sql·mysql
吃糖的小孩21 小时前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
笃行3502 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行3502 天前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行3502 天前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
SelectDB3 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶3 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵3 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
Nturmoils3 天前
WHERE 条件别凭习惯写,常用查询先跑一遍
数据库