在特定SQL查询中返回1或0

在特定SQL查询中返回1或0,sql,oracle,oracle-sqldeveloper,Sql,Oracle,Oracle Sqldeveloper,我在MYTABLE表中有三列(ID、NUM、NAMES)。有一个列名。我需要检查NAMES列,看看名字是JACK还是BRUCE,对应的NUM列=0。如果找到匹配项,则返回1或0 ID NUM NAMES 1 1 'TOM' 2 1 'MIKE' 3 0 'JACK' 4 1 'MICKY' 5 0 'BRUCE' 我提出了以下问题: select * case NAMES in ('JACK', 'BRUCE') and NUM=0 then 1 el

我在MYTABLE表中有三列(ID、NUM、NAMES)。有一个列名。我需要检查NAMES列,看看名字是JACK还是BRUCE,对应的NUM列=0。如果找到匹配项,则返回1或0

ID NUM NAMES    
1  1   'TOM'
2  1   'MIKE'
3  0   'JACK'
4  1   'MICKY'
5  0   'BRUCE'
我提出了以下问题:

select *
  case NAMES in ('JACK', 'BRUCE') and NUM=0 then 1 else 0 end as MYNAMES
from MYTABLE;
不幸的是,这不起作用

select  case
        when exists
        (
        select  *
        from    YourTable
        where   name in ('JACK', 'BRUCE')
                and NUM = 0
        )
        then 1
        else 0
        end
from    dual

这是有效的():

SELECT id, num,
    CASE WHEN names IN ('JACK', 'BRUCE') AND num=0
    THEN 1 ELSE 0 END AS mynames
FROM mytable
select case when NAMES in ('JACK','BRUCE') AND NUM = 0
            then 1
            else 0
       end
from your_table