• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Oracle中的内置函数在sql中的转换整理

mysql 搞代码 4年前 (2022-01-09) 31次浏览 已收录 0个评论

程序里面经常会即支持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_nu本文来源gao.dai.ma.com搞@代*码#网mber() OVER(ORDER BY A.MATTERID ) as RN FROM (
SELECT * FROM ATTACHMENT_T ) A
)T WHERE 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


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Oracle中的内置函数在sql中的转换整理
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址