我有以下表格:
A B
id | a | id | b
-------- -------
1 | . | 1 | 1
-------- -------
2 | . | 1 | 2
-------- -------
3 | . | 2 | 1
-------
2 | 2
B.id是一个引用A.id.的外键。 我想展示A.id,A.a,B.b。但是表A中的列只能与表B中引用A.id的第一行连接。我还想从表A中选择在表B中没有对应行的行。 所以结果应该是这样的:
A.id | A.a | B.b
----------------
1 | . | 1
----------------
2 | . | 1
----------------
3 | . |
提前感谢您的帮助。
答案 0 :(得分:1)
只需使用GROUP BY
和LEFT JOIN
条款:
SELECT A.id, A.a, B.b
FROM A
LEFT JOIN B ON B.id = A.id
GROUP BY A.id
ORDER BY A.id ASC
答案 1 :(得分:0)
试试这个 - :
SELECT A.id, A.a, B.b
FROM A
LEFT JOIN (
SELECT b1.id, b1.b
FROM B b1, B b2
WHERE b1.b < b2.b
)B
ON A.id = B.id
GROUP BY A.id
ORDER BY A.id asc