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

相关推荐
一只积极向上的小咸鱼2 小时前
第一性原理思考:从拆解问题到用实验检验答案
数据库
这个DBA有点耶2 小时前
时序数据库InfluxDB高基数问题深度拆解:内存索引膨胀机制与OOM完整链路
数据库·架构·dba
加油yx3 小时前
MySQL数据类型
数据库·mysql
蓝胖的四次元口袋3 小时前
Redis知识梳理(1)
数据库·redis·缓存
夜雪一千3 小时前
MySQL 数据加密实战:从传输、存储到字段级加密,分清场景不踩坑
数据库·mysql
wefg14 小时前
【Redis】C++ 自定义客户端
数据库·redis·缓存
这个DBA有点耶4 小时前
为什么UPDATE比SELECT危险得多?锁范围等于扫描行数
数据库·架构·代码规范
天国梦4 小时前
国密门禁品牌怎么选?2026年最新3个避坑要点
运维·服务器·数据库·python
DB哥讲数据库5 小时前
【达梦数据库安装教程】超详细图文讲解-附达梦安装包
数据库·oracle
Hoxy.R5 小时前
【金仓数据库产品体验官】KingbaseES V9R2C16 坏块检测与修复完整测试流程
数据库