1)我有两个表:
+------ +---------
topic mytask
+--------- +---------
ID | What ID | TopicID
---------- ------------
1 | A 1 | 1
2 | B
2) 我有如下SQL:
SELECT
a.id, b.id
FROM
topic a
JOIN (
SELECT
b.id,b.topicid
FROM
mytask b
) b on (b.topicid=a.id)
3) 我的输出如下(仅1行):
ID | ID
-------
1 | 1
我的预期输出如下(2行,通过列出所有主题优先):
a.ID | b.ID
-------------
1 | MATCHED - OK - TAKE IT!!!
2 | NULL or what,ever...
我该怎么做?
使用左外联接:
SELECT
a.id, b.id
FROM
topic a
LEFT JOIN (
SELECT
b.id,b.topicid
FROM
mytask b
) b on (b.topicid=a.id)
并将查询简化为
SELECT
a.id, b.id
FROM
topic a
LEFT JOIN
mytask b ON b.topicid = a.id