Sql server 将列Ageday转换为空值而不是零
.放电) 否则“ 以“AgeDay”结尾 请帮助我,在Sql server 将列Ageday转换为空值而不是零,sql-server,sql-server-2008,ssms,Sql Server,Sql Server 2008,Ssms,.放电) 否则“ 以“AgeDay”结尾 请帮助我,在ageday列中,我应该能够看到空字符串,而不是null或o,但现在我看到0选择DISTINCT SELECT DISTINCT Mrn.PrefixMedicalRecordNumber as 'Key' ,DATEDIFF(YY,Him.Birthdate,Bar.DischargeDate) as 'Age' ,CASE WHEN DATEDIFF(YY,Him.Birthdate,Bar.Dischar
ageday
列中,我应该能够看到空字符串,而不是null或o,但现在我看到0选择DISTINCT
SELECT DISTINCT
Mrn.PrefixMedicalRecordNumber as 'Key'
,DATEDIFF(YY,Him.Birthdate,Bar.DischargeDate) as 'Age'
,CASE WHEN DATEDIFF(YY,Him.Birthdate,Bar.DischargeDate) < 1
THEN ISNULL(NULLIF(CAST(DATEDIFF(d,Him.Birthdate,Bar.DischargeDate) AS VARCHAR(10)) , 0) , '')
ELSE''
END as 'AgeDay'
Mrn.PrefixMedicalRecordNumber作为“键”
,DATEDIFF(YY,他。生日,酒吧。放电)作为“年龄”
,当DATEDIFF(YY,他出生日期,酒吧)小于1时的情况
然后ISNULL(NULLIF(将DATEDIFF(d,Him.Birthdate,Bar.DischargeDate)转换为VARCHAR(10)),0),“”)
否则“
以“AgeDay”结尾
请不要在标题中加上“紧急”。可能值得向OP解释为什么这样做,因为他们似乎不知道数据类型的优先级。:)谢谢你,阿里先生,我感谢你的专业知识