【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'
相关推荐
麦聪聊数据3 分钟前
全链路数据安全防护(中):入口、权限、审计,筑牢安全管控铁三角
数据库
山岚的运维笔记10 分钟前
mysql 专业笔记 -- 第 17 章:连接:连接三个具有相同名称 ID 的表
运维·数据库·笔记·后端·学习·mysql·dba
YangYang9YangYan13 分钟前
校招视角|财务数字化岗位 SQL、工具、项目完整备考指南
大数据·数据库·sql
bksczm14 分钟前
从 “什么是 MySQL“ 到库与表的完整操作(MySQL基础篇)
linux·数据库·mysql
风123456789~22 分钟前
【Oracle专栏】解决clob+dblink 插入报错 ORA-22992
数据库·oracle
hoho_1228 分钟前
docker中升级mysql到最新版本
mysql·docker·容器
后台模板学习30 分钟前
学习的心态高频面试题
java·数据库·学习
redreamSo1 小时前
想给产品加一个 AI 搜索,是上向量数据库还是用 MongoDB 就够了?
数据库·人工智能·mongodb
Linux-lucky2 小时前
36-Linux学习之旅之MySQL主从复制
linux·运维·学习·mysql·ubuntu
APItesterCris2 小时前
告别人工盯品!借助 Open‑Claw 快速搭建电商商品全自动监控与数据分析系统(完整实操代码)
java·大数据·前端·数据库