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

相关推荐
閞杺哋笨小孩13 小时前
域名驱动多租户入驻:后台配置 + 前端解析
前端·vue.js
TeamDev13 小时前
在 Excel 加载项中嵌入 Web 视图
前端·后端·.net
悠哉摸鱼大王13 小时前
cesium学习(一)-基本概念
前端·cesium
LinDaiDai_霖呆呆13 小时前
大白话介绍大模型的一些底层原理,看完终于能跟人聊两句了
前端·人工智能·面试
todoitbo13 小时前
WHERE 子句中的函数执行顺序与副作用风险分析
数据库·时序数据库·函数
悠哉摸鱼大王13 小时前
cesium学习(二)-地图地形
前端·cesium
jiayong2313 小时前
MySQL 8.0 Root 用户远程登录配置完整指南
数据库·mysql
数智化管理手记13 小时前
设备总停机?找准根源+TPM核心逻辑,筑牢零故障基础
数据库·人工智能·低代码·制造
青山师13 小时前
【AI热点资讯】5月10日AI热点:Cloudflare裁员1100人、Musk庭审第二周回顾、OpenAI发布Codex Chrome插件
前端·人工智能·chrome·ai·ai热点
zhangshuang-peta13 小时前
MCP + OpenClaw:执行框架如何被“约束成系统”
数据库·人工智能·ai·ai agent·mcp·peta