我在尝试将Oracle(PLSQL)的代码转换为使用SQL Server 2012数据库。我正在转换Oracle NVL 2功能。我在SQL状态中遇到了错误,即isNULL需要2个参数。将Oracle代码转换为TSQL
甲骨文,我想转换为:
CASE WHEN LTrim(Rtrim(appointtype1)) in ('PRO','NOA')
THEN Nvl2(d.phonearea,To_Char(d.phonearea)||'/','')||' '||SubStr(To_Char(d.phonenbr),1,3)||'-'||SubStr(d.phonenbr,-4)
我已经修改了SQL如下:
CASE WHEN LTrim(Rtrim(appointtype1)) in ('PRO','NOA')
THEN ISNULL((d.phonearea,CAST(d.phonearea AS char)+'/','')+' '+SubString(CAST(d.phonenbr AS char),1,3)+'-'+SubString(d.phonenbr,-4))
我缺少什么?