SELECT `views`.* FROM `views`
INNER JOIN memberships ON memberships.second_id = views.user_id
WHERE (memberships.user_id = 1 OR views.user_id = 1)
我有一个MySQL查询-我的问题是,
WHERE
子句的第二部分不工作,只获取行,它等于memberships.user_id = 1
,但已经不OR views.user_id = 1
。为什么不?发生了什么?
最佳答案
这是因为您正在加入memberships.second_id
可能应该是memberships.user_id=views.user_id
,因为如果条件memberships.user_id=1
为真,那么views.user_id等于memberships.second_id和second_id可能不等于1
关于mysql - MySQL-使用INNER JOIN + WHERE子句查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9163004/