我正在尝试获取一个布尔值,我在sql命令中获取发送一个单词而不是1/0或true / false。
我正在使用的代码如下,并且它抓住了p.premium,我希望它看看它是0还是1.如果它的a 1将值改为"付费"如果它是0,则将值更改为" free"。
iv试过案例陈述但是它失败了哈哈。
SELECT P.Id AS Ref
,P.Listed AS Listed
,Convert(Date, Convert(VarChar, P.ListedDate, 12)) AS DateListed
,P.Premium AS Type
,P.PostCode AS London
,Convert(Date, Convert(VarChar,(SELECT TOP 1 MoveInDate FROM PropertyTenant WHERE P.Id = PropertyId ORDER BY Id), 12)) AS MoveInDate
FROM [Database].[dbo].[Property] AS P
答案 0 :(得分:1)
CASE WHEN P.Premium = 1 THEN 'Paid' ELSE 'Free' END AS IsPaid
答案 1 :(得分:1)
如果您使用的是SQL Server 2012,则可以使用IIF:
IIF ( P.Premium = 1, 'true value!', 'false value!' )