sql语句提示‘=’附近有错误
Select distinct a.Stcd,b.Stnm, a.ID,a.ParaKind,c.Remark,a.ParaValue,a.CollectTime, iif(a.Imported=0,''否'',''是'') as Imported from (T_Data as a '
+ 'left join T_StationMarker as b on a.Stcd=b.Stcd) inner join T_ParaKind as c on ( a.CollectTime between #%s# and #%s# and c.ParaKind=a.ParaKind ) order by a.CollectTime asc 数据表为sql2005中的表,表中字段imported的类型为int型,运行提示‘=’附近有错误,好像是第一行的等号 ,求解。
[解决办法]
iif是access里面的函数, mssql没有这个的函数,改用case吧
iif(a.Imported=0,''否'',''是'') as Imported from (T_Data as a '
+ 'left join T_StationMarker as b on a.Stcd=b.Stcd)
==>>case when a.Imported=0 then ''否'' else ''是'' end as Imported from ...
另外去掉红色的括号
[解决办法]
建议在SQL中执行一下这些语句,就知道那里出错了呀
[解决办法]
decode函数试试
[解决办法]
decode是oracle里面的,case of可以
[解决办法]
iif(a.Imported=0,''否'',''是'') as Imported from 要改,sql没有iif函数
这样:
(case when a.Imported=0 then ''否'' else ''是'' end) as Imported from