我无法选择一个字段,需要帮助。
WHEN dpav.isprimary = 1
THEN ct.accountnum
ELSE concat (ct.accountnum,'_',dpav.zipcode)
END 'Customeraccount'
在 FROM 子句之前,我要再次选择大小写子句(Customeraccount)
case
when DeliveryAddresses <> '' or ct.INVOICEACCOUNT = '' then 'Yes'
when DeliveryAddresses <> '' or ct.INVOICEACCOUNT = ''
and Customeraccount LIKE '%[_]%' then 'No'
else 'No'
end 'KeyAccount'
我尝试使用引号(“ Customeraccount”),但没有用。
答案 0 :(得分:0)
不能在定义别名的同一选择中使用列别名。
仍然可以按以下方式更新您的条件,它将为您提供所需的输出。
case
when (DeliveryAddresses <> '' or ct.INVOICEACCOUNT = '') and dpav.isprimary = 1 then 'Yes'
when DeliveryAddresses <> '' or ct.INVOICEACCOUNT = '' then 'No'
else 'No'
end 'KeyAccount'
即使省略第二名,克劳斯也可以正常工作。
case
when (DeliveryAddresses <> '' or ct.INVOICEACCOUNT = '') and dpav.isprimary = 1 then 'Yes'
else 'No'
end 'KeyAccount'