【mysql】数据处理格式化、转换、判断

数据处理

  • 判断是否超时,时间是否大于当前时间
  • 计算分钟数
  • 时间格式化处理
  • 如果数值类型进行转换字符类型
  • 字符拼接
  • case-when代替if-else
  • 判断数据空(特殊:含空数据、空字符处理)
sql 复制代码
select 
/*判断是否超时,时间是否大于当前时间*/
case when cc.OVERTIME > NOW() then '1' else '0' end as is_timeout,
/*计算分钟数*/
TIMESTAMPDIFF(MINUTE, cc.CREATE_TIME,cc.ARCHIVE_DATE) AS FLOW_TIME,
/*CASE处理字段为空或者空字符默认-1,其他等于原始值*/
CASE WHEN TPP.FLAG IS NULL THEN '-1' WHEN LENGTH(TPP.FLAG )=0 THEN '-1' ELSE TPP.FLAG END AS SHEET_TYPE,
/*CASE多个类型判断1 */
CASE cc.P_STATE when '70010004' or '70010006' then '1' ELSE '0' END as SHEET_STATUS,
/*CASE多个类型转换2 */
CASE cc.cont_level WHEN '一级' THEN '1' WHEN '二级' THEN '2' ELSE '3' END as sms_level,
/*如果为空默认填充-1;如果数值类型进行转换字符类型*/
IFNULL(CAST(cc.CONTENT AS CHAR),'-1') as cmplnt_desc,
/*时间格式化处理*/
DATE_FORMAT(ftr.SIGN_DATE,'%Y%m%d')  as sent_date,
from table_name cc
WHERE 1=1
and cc.CREATE_DATE BETWEEN '2023-12-24 00:00:00' and '2023-12-26 00:00:00'
相关推荐
李白客17 小时前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
ClouGence19 小时前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将21 小时前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils2 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波2 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
Jim6003 天前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
GreatSQL3 天前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql
倔强的石头_3 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库
倔强的石头_6 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库