2
我有下面的sql .. @ FeeType是存储过程的一个参数..当我调用下面的逻辑时我得到一个错误..如果我删除和条件并使逻辑只是和Case语句在SQL Server中的条件
WHEN ''ItemDesc'' THEN ''Item Description1''
那么逻辑工作fine..Can有人请看看,让我知道我在做什么错在这里。
SELECT @FIELDS = (COALESCE(@FIELDS, '' '','''') + ''<td style='' +
''"border:1px solid black;color:white">'' +
(CASE name
WHEN ''ItemDesc'' and '+ @FeeType +' = ''1'' THEN ''Item Description1''
WHEN ''ItemDesc'' and '+ @FeeType +' = ''2'' THEN ''Item Description2''
WHEN ''Units'' THEN ''Units''
WHEN ''Rate'' THEN ''Rate''
WHEN ''Frequency'' THEN ''Frequency''
WHEN ''Annual'' THEN ''Annual''
WHEN ''BasedOn'' THEN ''Based On'' ELSE ''Misc'' END) + ''</td>''
)
FROM tempdb.sys.Columns
WHERE object_id=object_id(''tempdb..#FeesCalculation'')
AND name not like ''CustColHTML_ID''
AND name not like ''ItemID''
感谢
为什么你每次使用两个单引号两次?这是一个动态查询吗? –
对不起忘了提及它..是的 – user1221989
你可以发布完整的查询 –