选择2个表/多列

时间:2014-01-11 11:46:48

标签: mysql sql select multiple-columns

我有以下查询

SELECT *
FROM tablea,
     tableb
WHERE tablea.a = tableb.b 
  AND partner_id = 1

好的,这样可以正常工作,但我想从多个列中选择SELECT,例如:

SELECT *
FROM tablea,
     tableb
WHERE tablea.a = tableb.b OR tableb.c OR tableb.d OR tableb.e OR...
  AND partner_id = 1

但是返回零

哦,它看起来很有趣,但问题是什么?

谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

您当前的语句被解析为:

WHERE (tablea.a = tableb.b) OR (tableb.c) OR (tableb.d) OR (tableb.e) OR...

您必须在每个子句中明确地与tablea.a进行比较,否则使用MySQL的IN()运算符:

WHERE tablea.a IN (tableb.b, tableb.c, tableb.d, tableb.e, ...)