表1中的标志字段也与表2相似

时间:2015-06-07 00:30:00

标签: php mysql sql select join

我有两个表(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

1 个答案:

答案 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