0

我想用子查询返回多个列。

例如,

select a.name, a.age
       from table1 a, ( select b.race, b.weight from table2 b where dateDiff(dd, b.date1, b.date2 ) < 30 )
where a.age > 24

你们中的一些人说过“只需使用联接”-我不希望子查询中的 dateDiff 影响父查询的结果。同样,我的真实查询比这更复杂,但这应该足以解释我的问题。

4

1 回答 1

3

使用左连接执行此操作,左连接将返回 NULL 值

SELECT a.name, b.score, ...
FROM (select id, name, ... from table1 where ???) a
LEFT JOIN (select id, score, ... from table2 where ???) b on (a.id = b.id)
WHERE clause
于 2013-07-03T07:21:40.950 回答