Sql语句从SqlServer转换Oracle

sql语句从SqlServer转换Oracle时,需注意的地方


日期:
0.获取系统时间getdate()改为sysdate
1.日期转换字符串to_char(sysdate,'yyyy-mm-dd')
2.日期截取年月日trunc(sysdate)
3.字符串转日期,需要用to_date(sysdate,'yyyy-mm-dd hh24:mi:ss')
4.日期加减不能用DATEADD,直接用+,sysdate-1,sysdate+365
5.日期相减后,会有很多位小数,要注意截取


sql语法:
0.参数前面不用@,改用:
1.字符串连接不用+,改用||
2.没有from语句时,用from dual
3.sql语句后面不能有分号(我猜是执行时.net会在后面加,连续两个,连续两个就报错了)


函数:
0.isnull改为nvl
1.不能用cast转换类型,可以用trunc和to_char替换


其他:
add parameter 的时候,可能和顺序有关,要注意

left join 后,要用nvl,否则容易出错


个人总结,抛砖引玉,希望补充...

你可能感兴趣的:(SqlServer,oracle)