【mysql】数据处理是否超时、处理时长

数据处理

Mysql如何计算两个时间字段的差值?可用函数 TIMESTAMPDIFF(),有参数设置,可以精确到天(DAY)、小时(HOUR),分钟(MINUTE)和秒(SECOND),使用起来更加灵活。

是否超时

sql 复制代码
-- Mysql如何计算两个时间字段的差值?可用函数 TIMESTAMPDIFF()
-- 0否,1是,-1未知,"处理时限"超48小时则视为超时
select case 
when TIMESTAMPDIFF(HOUR, tpp.ARCHIVE_DATE,tpp.DEADLINE_TIME) > 48 then '1' 
when TIMESTAMPDIFF(HOUR, tpp.ARCHIVE_DATE,tpp.DEADLINE_TIME) > 0 
and TIMESTAMPDIFF(HOUR, tpp.ARCHIVE_DATE,tpp.DEADLINE_TIME) <= 48 then '0' 
else '-1' end as IS_TIMEOUT,
'是否超时' from table_name tpp

处理时长

sql 复制代码
-- 归档工单的归档时间ARCHIVE_DATE减去建单时间CREATE_TIME的时间差,单位秒。
-- 新建工单,系统当前时间减建单时间CREATE_TIME的时间差,单位秒。
-- 处理时长	COMP_DUR	单位:秒	NUMBER(10)
select case 
IFNULL(TIMESTAMPDIFF(SECOND,NOW(),tpp.DEADLINE_TIME),0) as COMP_DUR_1,
IFNULL(TIMESTAMPDIFF(SECOND,tpp.ARCHIVE_DATE,tpp.DEADLINE_TIME),0) as COMP_DUR_2,
'处理时长' from table_name tpp

时间差计算

sql 复制代码
-- TIMESTAMPDIFF函数,有参数设置,可以精确到天(DAY)、小时(HOUR),分钟(MINUTE)和秒(SECOND),使用起来更加灵活。
-- 比较两个时间,时间小在前,时间大放后。
--相差1天
select TIMESTAMPDIFF(DAY, '2023-03-20 23:59:00', '2023-03-22 00:00:00');
--相差49小时
select TIMESTAMPDIFF(HOUR, '2023-03-20 09:00:00', '2023-03-22 10:00:00');
--相差2940分钟
select TIMESTAMPDIFF(MINUTE, '2023-03-20 09:00:00', '2023-03-22 10:00:00');
--相差176400秒
select TIMESTAMPDIFF(SECOND, '2023-03-20 09:00:00', '2023-03-22 10:00:00');
-- 14个月前
SELECT DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -14 MONTH), '%Y/%m/%d')
相关推荐
智能工业品检测-奇妙智能5 分钟前
国产化系统的性价比对比
人工智能·spring boot·后端·openclaw·奇妙智能
编码忘我16 分钟前
java强引用、软引用、弱引用、虚引用
后端
蝎子莱莱爱打怪24 分钟前
别再裸用 Claude Code 了!32 个亲测Skills + 8 个 MCP,开发效率直接拉满!
java·后端·claude
犯困的饭团27 分钟前
4_【自动化引擎Ansible Runner】将 Runner 嵌入灵魂 - Python API 编程
后端
AI茶水间管理员30 分钟前
爆火的OpenClaw到底强在哪?一文了解核心架构(附一条消息的全链路流程)
人工智能·后端
Java水解30 分钟前
Rust异步缓存系统的设计与实现
后端·rust
野犬寒鸦38 分钟前
JVM垃圾回收机制面试常问问题及详解
java·服务器·开发语言·jvm·后端·算法·面试
用户908324602731 小时前
Spring AI + RAG + SSE 实现带搜索来源的智能问答完整方案
前端·后端
Java编程爱好者1 小时前
Java面试题及答案整理(2026年牛客网最新版)
后端
_杨瀚博1 小时前
JAVA找出哪个类import了不存在的类
java·后端