我有一个表[Case],其中包含两个整数,一个叫[CaseNo],另一个叫[QueryNo]。其中只有一个会在任何时候存在,另一个将返回Null。
我想要一个SELECT语句,如果它存在则会返回[CaseNo],如果不存在,它应该返回[QueryNo]继续'Q'以表示它是[QueryNo]。
我尝试了以下声明 -
SELECT CONVERT(VarChar(50), (ISNULL(CaseNo, 'Q' + QueryNo)))
FROM [Case]
但它不喜欢我的转换。
有人可以帮我找到正确的声明来实现我的目标。
答案 0 :(得分:1)
使用CASE
声明:
Select Case when caseNo is null then 'Q'+ Convert(varchar(10),queryNo)
else Convert(varchar(10),caseNo) end as yourNo
from [Case]
或者如果你喜欢使用isnull / coalesce,你可以这样做:
Select isnull(Convert(varchar(10), caseNo),'Q' + Convert(varchar(10), queryNo)) yourNo
from [Case]