【发布时间】:2017-01-11 18:37:47
【问题描述】:
假设我想找出所有特定人群的父母或子女。
我可以这样做:
SELECT *
FROM people P
WHERE
P.parent_id IN ('111', 'abc', '42', '1a2b3c') OR
P.child_id IN ('111', 'abc', '42', '1a2b3c')
有什么方法可以避免将列表写入两次(如果我要查找更多列,则可以多次写入)?
我正在寻找类似的东西:
(...) WHERE (P.parent_id OR P.child_id) IN ('111', 'abc', '42', '1a2b3c')
我使用的是 Oracle,但也欢迎使用简单的 SQL 解决方案。
【问题讨论】: