Oracle日期差计算技巧:等效SQL Server DATEDIFF函数的解决方案

创始人
2025-01-09 09:34:09
0 次浏览
0 评论

oracle中功能等同sqlserver中的datediff的函数?

SQLServer中天数的计算为:selectdatediff(date,2006-05-2610:11'2006-05-2511:11')结果只有1天。
但转到ORACLE:selecttrunc((to_date('2006-05-2610:11','YYYY-MM-DD:MI')-to_date('2006-05-25).11:11','YY-MM-DHH:MI')))asdatedifffromdual结果为0,之前的日期“2006-05-2611:11”仅在更改后1天返回。
看来我的标准应该根据日期数来评估compdate是yyyy-mm-ddh:MI格式varchar2类型,你想让我写:selecttrunc(to_date(to_c)char(system,'YYYYMMDD'),'YYYYDD'))-直到表1中的until_date(until_char(until_date('YYYY-DDHH:MI'),'YYYYDD'),'YYYYMMDD'))他们说这很烦人,有更好的方法吗?------------------解决办法:selecttrunc(sysdate)-trunc(to_date('2006-05-2810:20','YYYY-MM-DDHH24:MI')))SELECT*FROMMONITORTHERMOMETERTIMEBETWEEN'"+Str(dtStart.Value)+"AND"+Str(dtEnd.Value)+"ANDNOT(SELECT)FROMMONITOR温度表WhereDateDiff(mi,time,A.time)<="+Str(text1.text)+")'"+Str(dtStart.Value)+"和"从轨道温度表中选择时间*"+之间的顺序时间Str(dtEnd.Value)+"和nil(从温度表中选择时间,其中DateDiff(mi,hr,hh)

sqlserver按分隔符截取字符串

可以参考以下代码:

selectsubstring('ADFASDFD(DASFADSFAS)',1,charindex('(','ADFASDFD(DASFADSFAS)')-1)

主要用到两个函数,一个是charindex,是确定指定字符位置的函数

<信息扩展名:

sqlserver参考字母数字

upper(char_expr)转换为大写

lower(char_expr)转换为小写

空格(int_expr)生成int_expr空格

reverse(char_expr)反转字符串

stuff(char_expr1,start,length,char_expr2)更改字符串char_expr1来自

参考来源:百度百科-SqlServer

热门文章
1
OpenWrt Docker环境下部署多... n1刷openwrt上面的DOCKER有什么用独立的程序和结构。Docker将应...

2
Redisson分布式锁深度解析:Red... Redis实现分布式锁+Redisson源码解析在某些场景下,多个进程需要以互斥...

3
Java程序员简历IT技能描述指南:精准... Java程序员简历IT技能怎么写Java程序员简历中的技能描述应该具体、有针对性...

4
Redis分布式锁事故复盘:揭秘超卖背后... 一次由Redis分布式锁造成的重大事故,避免以后踩坑!使用基于Redis的分布式...

5
深度解析Docker:容器技术提升应用部... docker是什么Docker是一种强大的开源容器技术,它将应用程序及其所有依赖...

6
Java数组定义与初始化方法全解析 怎样用java定义一个int数组在Java中,直接分配了诸如int [] ana...

7
Docker容器启动与Shell操作指南... docker创建了一个容器,容器里面的服务怎么设置成启动容器如果创建的Docke...

8
Python高效判断素数:方法与代码详解 python如何判断一个数是否为素数确定数字是否是数字,您可以使用循环检查数字是...

9
Java算法实战:从计算阶乘到优化性能的... Java数据结构算法初体验:计算1到100的和、10的阶乘在与不同问题的冲突中,...

10
前端与后端:软件开发中的角色与职责解析 前端和后端有什么区别前端和后端之间的区别:在软件开发中,我们经常将软件开发分为两...