mysql - 如果另一个表mysql中存在ID,如何返回标志

标签 mysql

我尝试创建一个标志,如果表 B 上的表 A 中存在 id,则返回该标志:

Table A
------------------
id | name |
 1 | beer |
 2 | wine |
------------------
table B
-----------------
id | id_table_a
1  | 1

我想返回这样的东西:

-------------------------------
id | name | id_table_a | flag |
 1 | beer | 1          | 1    |
 2 | wine | Null       | 0    |
-------------------------------

其中标志 1 = 存在于另一个表中或 0= 不存在

请给个建议或者链接!! 注意:- 没有创建行标志,可能存在创建临时标志或任何建议的可能性......!!

最佳答案

这就是您要找的:

select a.*, b.id_table_a, case when b.id is null then 0 else 1 end as flag 
from tablea a
left join tableb b on a.id = b.id_table_a

关于mysql - 如果另一个表mysql中存在ID,如何返回标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50743636/

相关文章:

mysql - 多个 where 子句是否需要多个索引?

MySQL,两列共享相同的连接

MySql:获得比百分之一秒更精确的时间测量

mysql - SQL:根据条件递归获取所有关系

php - 这个Mysql PDO执行有什么问题导致不执行?

php - Mysql 使用 Like 运算符在 json 数组中搜索

php - SQL Order By id 和 Count star 不工作

mysql - 将多条sql更新语句合二为一

mysql - 通过删除不必要的信息来维护数据库

mysql - 用总和更新表