SELECT WHERE id = 1但返回id = 11?

时间:2016-05-03 21:47:04

标签: mysql

我有2张桌子;让我们称他们为foo_table和bar_table 所以,foo_table的id是bar_table的外键 在bar_table中有foo_table的id = 11

但是,当我尝试时:

SELECT * FROM bar_table AS b 
  INNER JOIN foo_table AS f ON b.foo_id = f.foo_id 
   WHERE b.foo_id = 1

它应该返回NULL,因为bar_table中没有任何数据,foo_id = 1但它返回的数据为foo_id = 11

有人能解决吗?

更新
对不起我没写我的桌子......
这是sqlfiddle

1 个答案:

答案 0 :(得分:1)

始终对布尔操作进行分组。这将确保以您希望的方式解释它们。

WHERE k.id_pegawai = '1'
  AND (k.status_keluarga = 'suami' OR k.status_keluarga = 'istri')