我正在尝试查找表中是否存在特定值。下面是我的桌子
EmpID ApplID Status
123456 1 complete
789365 2 Requested
注意:MS sqlserver
我正在尝试以下查询
Select Status from ApplicationRequest where Like %Requested% ;
如果值存在,则查询应返回true,如果值不存在,则返回false
答案 0 :(得分:2)
如果您使用:
where status Like '%Requested%'
那样,您将永远不会得到'False'
,因为如果'Requested'
中没有包含status
的行,那么结果将为空。
因此,将其与EXISTS
一起使用:
select
case
when exists (select 1 from ApplicationRequest where status Like '%Requested%') then 'TRUE'
else 'FALSE'
end result
答案 1 :(得分:0)
使用聚合和case
表达式:
select (case when count(*) > 0 then 'true' else 'false' end)
from ApplicationRequest
where status Like %Requested% ;
答案 2 :(得分:0)
SELECT CASE WHEN Status='Requested' THEN 'TRUE' ELSE 'FALSE' END AS STATUS
FROM ApplicationRequest
WHERE LIKE 'Requested'
答案 3 :(得分:0)