在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。

相关推荐
IronMurphy2 分钟前
Redis拷打第一讲
数据库·redis·缓存
盖世英雄酱581362 分钟前
6000条数据执行时间9s(二)
数据库·后端
_376271533 分钟前
MySQL主从复制如何实现读写分离_利用ProxySQL进行流量分发
jvm·数据库·python
2401_833033623 分钟前
SQL如何提高分组统计查询的响应速度_索引与缓存策略
jvm·数据库·python
是梦终空12 分钟前
计算机源码273—基于SpringBoot+Vue3停车场管理系统带支沙箱支付(源代码+数据库)
数据库·spring boot·vue·mybatis·停车场管理系统·沙箱支付·毕设设计
dinglu1030DL16 分钟前
C#怎么实现发布订阅模式 C#如何用事件总线EventBus实现模块间的松耦合消息通信【架构】
jvm·数据库·python
神明93117 分钟前
PHP函数怎样利用硬件内存压缩功能_PHP启用zswap硬件加速【指南】
jvm·数据库·python
曹牧23 分钟前
PL/SQL:视图(View)比较
数据库·sql
2301_7815714223 分钟前
如何配置用户的资源使用上限_MAX_QUERIES_PER_HOUR查询频率限制
jvm·数据库·python
2501_9012005327 分钟前
编写表与字段注释后数据无法保存怎么排查_权限设置与回滚处理
jvm·数据库·python