我有两张这样的桌子: (文档)
身份证 | 姓名 |
---|---|
1 | 文档1 |
2 | 文档2 |
和
(标志)
身份证 | 人ID | 文档ID | 签名 |
---|---|---|---|
1 | 1 | 1 | 2023-01-01 |
2 | 3 | 2 | 2023-01-02 |
所以我想获取每个用户的文档详细信息。例如,我需要一个列表来显示 Id = 1 的用户,如下所示:
(结果)
文档ID | 签名 |
---|---|
1 | 2023-01-01 |
2 | 空 |
我尝试了如下左连接:
SELECT * from docs
LEFT JOIN Signs on docid = docs.id
where Signs.personId = 1 || Signs.personId is null;
但它只返回结果表的第一行。我怎样才能产生我想要的结果?
SELECT t1.id, t2.signed_at
FROM docs t1
LEFT JOIN signs t2 ON t1.id = t2.doc_id AND t2.person_id = 1