检查表中的特定值

时间:2019-07-15 16:02:38

标签: sql sql-server

我正在尝试查找表中是否存在特定值。下面是我的桌子

EmpID   ApplID  Status
123456  1       complete
789365  2       Requested

注意:MS sqlserver

我正在尝试以下查询

Select Status from ApplicationRequest where Like %Requested% ;

如果值存在,则查询应返回true,如果值不存在,则返回false

4 个答案:

答案 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)

您正在寻找特定值,然后输出以下查询:

SELECT 
CASE 
    WHEN COUNT(*) > 0   THEN 'TRUE' 
    ELSE 'FALSE'
END AS RESULT
FROM ApplicationRequest 
WHERE Status like '%Requested%'

enter image description here

动态输出

SELECT 
CASE 
    WHEN COUNT(*) > 0   THEN 'TRUE' 
    ELSE 'FALSE'
END AS RESULT
FROM Table name
WHERE Column_name like '%SearchValue%'