本文介绍了在特定 SQL 查询中返回 1 或 0的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I have three columns in the table MYTABLE (ID, NUM, NAMES). There is a column NAMES. I need to check on NAMES column to see if the first name is JACK or BRUCE and the corresponding NUM column = 0. If the match is found, return 1 else 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;

不幸的是,这行不通.

推荐答案

This works (SQLFiddle演示):

This works (SQLFiddle demo):

SELECT id, num,
    CASE WHEN names IN ('JACK', 'BRUCE') AND num=0
    THEN 1 ELSE 0 END AS mynames
FROM mytable

这篇关于在特定 SQL 查询中返回 1 或 0的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-13 21:18