Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用mysql根据条件选择列_Mysql - Fatal编程技术网

使用mysql根据条件选择列

使用mysql根据条件选择列,mysql,Mysql,我的数据库中有两个表 Table A a_id,email,col2,col3 及 我想做的是制定一个查询,它可以选择每个布尔值的列名 我的意思是我有一组a_id,我想从表a中获取数据 对于特定的a_id,如果电子邮件存在于表B中,则取col2,否则取col3 我想用一种高效的方式表述一个如下所示的查询:) 试试这个- SELECT a.a_id, IF(b_id IS NULL, col3, col2) FROM tablea a LEFT JOIN tableb b ON a.a_id

我的数据库中有两个表

Table A
a_id,email,col2,col3

我想做的是制定一个查询,它可以选择每个布尔值的列名

我的意思是我有一组a_id,我想从表a中获取数据

对于特定的a_id,如果电子邮件存在于表B中,则取col2,否则取col3

我想用一种高效的方式表述一个如下所示的查询:)

试试这个-

SELECT a.a_id, IF(b_id IS NULL, col3, col2) FROM tablea a
  LEFT JOIN tableb b ON a.a_id = b.b_id
WHERE a.a_id IN (1,2,3,4,5,6,7);
试试这个-

SELECT a.a_id, IF(b_id IS NULL, col3, col2) FROM tablea a
  LEFT JOIN tableb b ON a.a_id = b.b_id
WHERE a.a_id IN (1,2,3,4,5,6,7);
SELECT a.a_id, IF(b_id IS NULL, col3, col2) FROM tablea a
  LEFT JOIN tableb b ON a.a_id = b.b_id
WHERE a.a_id IN (1,2,3,4,5,6,7);