我在SELECT查询中使用Case语句来返回连接字符串。我想要返回的字符串是一个列值和查询中指定的字符串的串联。t sql连接列名和字符串
我粘贴了下面的代码,拼接部分(粗体)显示为好像它在Excel中。请指导如何在T SQL中完成此操作。
WHEN (InstrumentType = 'Loan' OR InstrumentType = 'LoanF') AND Leg.Principal <0
THEN CONCATENATE(InstrumentType,' Deposit')
我在SELECT查询中使用Case语句来返回连接字符串。我想要返回的字符串是一个列值和查询中指定的字符串的串联。t sql连接列名和字符串
我粘贴了下面的代码,拼接部分(粗体)显示为好像它在Excel中。请指导如何在T SQL中完成此操作。
WHEN (InstrumentType = 'Loan' OR InstrumentType = 'LoanF') AND Leg.Principal <0
THEN CONCATENATE(InstrumentType,' Deposit')
在SQL Server 2008这样的事情应该工作:
SELECT
CASE WHEN InstrumentType IN ('Loan','LoanF') AND Leg.Principal < 0
THEN InstrumentType + ' Deposit'
ELSE 'somethingelse'
END AS YourColumn
FROM dbo.Yourtable
非常感谢 - 非常感谢 - 非常有帮助 – user2390698
试试这个 -
WHEN (InstrumentType = 'Loan' OR InstrumentType = 'LoanF') AND Leg.Principal <0
THEN InstrumentType+' Deposit'
'然后InstrumentType +'Deposit''如果列是一个字符串,否则'然后cast(InstrumentType as varchar(size_here))+'Deposit' –
MSDN参考:[+(String Concatenation)(Transact-SQL)](https://msdn.microsoft.com/zh-cn/library/ms177561%28v= sql.100%29.aspx) – jpw
非常感谢 - 非常感谢 - 非常有帮助 – user2390698