我有两个表(table1和table2),其中table2是table1的子集,我想要做的是一个select语句,如果tabl1的字段也在table2中,则返回一个布尔值
例如: 表1包含item1,item2,item3和item4 表2包含item2和item4
我正在尝试创建一个返回
的select语句item1,false item2,是的 item3,false item4,true
到目前为止,我能够选择table1中但不在table2中的所有元素,或者选择table1中但不在table2上的所有元素。但是,我无法找到解决此问题的方法,我无法获得正确的搜索结果。我希望有人可以帮助我。
我在PHP中运行查询我正在使用的数据库是mySQL
答案 0 :(得分:2)
您可以离开加入table2
,如果该项目不在table2
中,那么它将为空:
SELECT
table1.item,
CASE WHEN table2.item IS NULL THEN 'No' ELSE 'Yes' END AS ItemIsInTable2
FROM table1
LEFT JOIN table2 ON table1.item = table2.item