oracle 内置函数 导出,Oracle中的内置函数在sql中的转换整理

5268f80b9b1e01f982625ef6fac83ca1.png

程序里面经常会即支持Oracle数据库,又支持sql数据库。而有些Oracle内置函数用的比较多,但在sql中语法有些不同,我做了些整理,希望可以帮助大家。。。。 1.oracle中的内置函数: oracle 中的round函数(四舍五入)(sql也可以用) oracle 中的trunc返回的

程序里面经常会即支持Oracle数据库,又支持sql数据库。而有些Oracle内置函数用的比较多,香港空间,但在sql中语法有些不同,我做了些整理,网站空间,希望可以帮助大家。。。。

1.oracle中的内置函数:

oracle 中的round函数(四舍五入)(sql也可以用)

oracle 中的trunc返回的是当天日期的[00:00:00]

oracle 中的floor,floor(n)取小于等于数值n的最大整数(sql也可以用)

oracle 中的length函数 sqlserver中是len

oracle 中的datalength函数 sqlserver中是datalength

oracle 中的lob_to_char函数 改为convert(char,opertime,120)

oracle 中的to_char函数 改为convert(char,opertime,120)

oracle 中的substr函数 改为substring

例如:select convert(char, getdate(), 120) --yyyy-mm-dd hh:mm:ss(24h)

convert(char,SubmitTime,120)= convert(char,getdate(),120)

oracle 中floor(sysdate - trunc(opertime)改为 datediff(dd,convert(varchar(100),InputDate,111),convert(varchar(100),getdate(),111))

oracle 中的dbms_lob.getlength改为datalength(sqlserver数据库中把Clob类型改为NText类型)

oracle 中的 ROWNUM改为row_number() OVER(ORDER BY xx)并且sql语句中必须带有top

例如:sql中的写法:

SELECT * FROM (

SELECT A.*, row_number() OVER(ORDER BY A.MATTERID ) as RN FROM (

SELECT * FROM ATTACHMENT_T ) A

)T WHERE RN <= 20 AND RN >=0

2.Oacle系统表 dual

证对sqlserver直接去掉dual

3.遇到的错误以及解决方法:

SqlDateTime 溢出。必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间

修改model里面的构造函数,服务器空间,给属性赋值为DateTime类型

ElementContent_Model,OperLog_Model

1428d0e076c3959ab11d28a39bc84fab.png

5268f80b9b1e01f982625ef6fac83ca1.png

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值