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字段进行排序;

相关推荐
Lee川3 小时前
Milvus 实战:当 RAG 遇上向量数据库,从"玩具 Demo"到"生产可用的"那一步
前端·数据库·人工智能
网管NO.15 小时前
SQL 排序分页精讲!ORDER BY+LIMIT 全套用法,报表分页
数据库·sql
MRSM_015 小时前
InfluxDB vs TimescaleDB,谁更适合你的场景
数据库
CAE虚拟与现实6 小时前
Redis如何保证存和读的过程中数据的一致性?
数据库·redis·缓存
我爱cope9 小时前
【Agent智能体4 | 智能体AI的应用】
数据库·人工智能·职场和发展
知识分享小能手10 小时前
Flask入门学习教程,从入门到精通,数据库操作 — 知识点详解与案例代码(4)
数据库·学习·flask
我是一颗柠檬10 小时前
【MySQL全面教学】MySQL基础SQL语句Day3(2026年)
数据库·后端·sql·mysql·oracle
XS03010610 小时前
MyBatis动态SQL
数据库·sql·mybatis