【发布时间】:2021-12-23 00:46:16
【问题描述】:
我有这两张表需要并排加入
表 A
| id | date |
|---|---|
| 1 | 03/01/2021 |
| 1 | 04/01/2021 |
| 1 | 05/01/2021 |
| 2 | 04/01/2021 |
| 2 | 05/01/2021 |
| 3 | 03/01/2021 |
| 3 | 04/01/2021 |
表 B
| id | date |
|---|---|
| 1 | 03/01/2021 |
| 1 | 04/01/2021 |
| 1 | 05/01/2021 |
| 1 | 06/01/2021 |
| 2 | 04/02/2021 |
| 2 | 05/02/2021 |
| 3 | 03/01/2021 |
输出将是
| id | dateA | dateB |
|---|---|---|
| 1 | 03/01/2021 | 03/01/2021 |
| 1 | 04/01/2021 | 04/01/2021 |
| 1 | 05/01/2021 | 05/01/2021 |
| 1 | 06/01/2021 | |
| 2 | 04/01/2021 | 04/02/2021 |
| 2 | 05/01/2021 | 05/02/2021 |
| 3 | 03/01/2021 | 03/01/2021 |
| 3 | 04/01/2021 |
基本上,搜索所有匹配一个值的记录,(例如1,然后将它们并排列出)
我尝试使用 id 作为键加入它们,但它产生了许多我不想要的其他行。也尝试过分组,但顺序混乱
我通过 pandas 使用 sqlite
下面的查询导致返回一些额外的行,我不知道如何过滤掉
SELECT
A.id, A.date, B.date
FROM
A
JOIN
B ON B.id = A.id
添加 group by 会使表只输出每个多的第一条记录
【问题讨论】:
-
请分享您的 SQL 语句。
-
添加了我使用的join语句
标签: sql sqlite union common-table-expression window-functions