您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

记录下oracle数据库转sqlserver数据库(二)

bubuko 2022/1/25 19:08:33 sqlserver 字数 2643 阅读 862 来源 http://www.bubuko.com/infolist-5-1.html

关于oracle系统函数在sqlserver中如何实现: 1.获取自定义序列下一值 oracle:select sqe_XXX.nextval from dual sqlserver:SELECT NEXT VALUE FOR sqe_XXX AS NEXTVAL FROM sys.sequence ...

关于oracle系统函数在sqlserver中如何实现:

1.获取自定义序列下一值

oracle:select sqe_XXX.nextval  from dual

sqlserver:SELECT NEXT VALUE FOR sqe_XXX AS NEXTVAL FROM sys.sequences WHERE name = ‘sqe_XXX‘

2.oracle中nvl()与sqlserver中isnull

nvl():不仅会判断值是否为null,还会判断是否为‘‘字符。

技术分享图片

 

 

 

isnull():仅仅只会判断是否为null。

技术分享图片

 

 

 

3.oracle中decode() == sqlserver中case

decode() :例 decode(sex,1,‘男’,‘女‘) 

case():例 case sex when 1 then ‘男’ else ‘女‘ end

注: decode(age,null,10,age) ------- 得写成case when age is null then 10 else age end,不能为case age when null then 10 else age end。

因为我写成when null时,并不能判断成功。

4.oracle中wm_concat()

wm_concat():合并列

例:

select wm_concat(项目名称) from
(
select

decode(zz.reportname,null,zz.ztitemname,zz.reportname) 项目名称
nvl(zz.combno,zz.ztitemid) 组合号 ,
zz.deptid 
from hms_rep_ztitemsummary z,hms_reg_ztitem zz
where z.regid=‘999‘
and z.regid=zz.regid
and z.ztitemid=zz.ztitemid
) dd
group by dd.组合号,dd.deptid

 

sqlserver中我是如此实现:

select (select (zt.ztitemname)+‘,‘ from hms_reg_ztitem zt
where zt.deptid=dd.deptid
for xml path(‘‘)) 项目名称 from
(
select
case when zz.reportname is null then zz.ztitemname else zz.reportname end 项目名称,
case when zz.combno is null or zz.combno = ‘‘ then zz.ztitemid end 组合号,
zz.deptid
from hms_rep_ztitemsummary z
left join
hms_reg_ztitem zz on
z.regid=zz.regid
and z.ztitemid=zz.ztitemid
where z.regid=‘999‘
) dd
group by dd.组合号,dd.deptid

5.

to_char()  同  convert(varchar,1)  or  cast(1 as varcahr)

to_number()  同   convert(decimal,1)  or  cast(1 as decimal)

to_char(sysdate,‘yyyy-MM-dd HH:mi:ss‘)  同  convert(varchar,getdate(),120)

to_char(sysdate,‘yyyy-MM-dd)  同  convert(varchar,getdate(),23)

 

记录下oracle数据库转sqlserver数据库(二)

原文:https://www.cnblogs.com/adai0404/p/14744061.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶