在sql中影响排序,但不改变字段值的方法

在order by 后面使用case ... when ... else ... end:

sql 复制代码
select sn, eos_date from device_table
ORDER BY 
	case 
		when eos_date = '1970-01-01' then null
		else eos_date 
		end
		asc
		nulls last

上面的sql中,order by后面不是某个字段,而是一个条件表达式 case ... when ... else ... end.

表示当字段eos_date = '1970-01-01'时,则表示该行数据排序的值为null,其他情况为eos_date的原始值。

但是select到的值,仍然是eos_date的原始值,当eos_date = '1970-01-01',select到的值,仍然是'1970-01-01',而不是null。

相关推荐
Polar__Star3 小时前
uni-app怎么实现App端一键换肤 uni-app全局样式动态切换【实战】
jvm·数据库·python
河阿里4 小时前
HTML5标准完全教学手册
前端·html·html5
吴声子夜歌4 小时前
Vue3——新语法
前端·javascript·vue.js
jiayong234 小时前
第 36 课:任务详情抽屉快捷改状态
开发语言·前端·javascript·vue.js·学习
FFF_634560234 小时前
通用 vue 页面 js 下载任何文件的方法
开发语言·前端·javascript
南境十里·墨染春水4 小时前
linux学习进展 进程间通讯——共享内存
linux·数据库·学习
光影少年4 小时前
中级前端需要会的东西都有那些?
前端·学习·前端框架
琢磨先生TT4 小时前
为什么很多后台系统功能不少,看起来却还是很廉价?
前端·vue.js·设计
ekuoleung4 小时前
量化平台中的 DSL 设计与实现:从规则树到可执行策略
前端·后端
小研说技术4 小时前
实时通信对比,一场MCP协议的技术革命
前端·后端·面试