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
C语言科学计数法1.25e+3详解:12... C语言中的1.25e+3表示多少呢?在C-语言中,1 .2 5 E+3 是一个真...

7
K8S网络核心:CNI0与Docker0... 浅谈k8s中cni0和docker0的关系和区别CNI0 DOI被替换在K8 S...

8
Docker容器重启技巧:实现持续运行与... Docker 重启服务,容器全部退出的解决dockerrun -srestart...

9
Docker网络模式深度解析:五大模式详... Docker 的网络模型新桥梁:容器中容器中容器中的容器中有六个网络。容器通常连...

10
C语言实现三数比较:求最大值和最小值教程 c语言编程:输入三个数,输出他们的最小值,要求定义一个函数,反悔两个数的最小值#...