[英]Convert data type to text for case statement
I need to convert data type to text for following statement.我需要将数据类型转换为文本以用于以下语句。 Can someone please help…有人可以帮忙吗...
CASE WHEN [OrderID] IS NULL THEN 'N'
WHEN [Order_ID] = '' THEN 'N'
ELSE [Order_ID] END AS [Order_ID]
Try casting the order ID to varchar
in the ELSE
branch of your CASE
expression:尝试在CASE
表达式的ELSE
分支中将订单 ID 转换为varchar
:
CASE WHEN COALESCE([Order_ID], '') = ''
THEN 'N'
ELSE CAST([Order_ID] AS VARCHAR(MAX)) END AS [Order_ID]
consider isnull()
考虑isnull()
CASE WHEN isnull([OrderID], '') = '' THEN 'N'
ELSE cast([Order_ID] as varchar(300)) END AS [Order_ID]
Try this Alternate Method-试试这个替代方法-
IIF(ISNULL([OrderID],'')='','N',CAST([OrderID] AS NVARCHAR(MAX))) AS [OrderID]
You Can try below also:您也可以在下面尝试:
CASE WHEN OrderID IS NULL THEN 'N'
WHEN OrderID ='' THEN 'N'
ELSE convert(varchar(20),OrderID ) END
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.