我有以下查询
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
但是返回零
哦,它看起来很有趣,但问题是什么?谢谢你的帮助!
答案 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, ...)