【发布时间】:2020-12-04 19:34:48
【问题描述】:
我有 2 个具有相同列名但数据不同的表。考虑以下几点:
表1结构:
id, sid, text
1, 1, 'Hello World'
2, 1, 'Hello World again'
3, 2, 'Hw...'
4, 2, 'Hw2...'
还有表2:
id, sid, text
1, 1, 'Hello World 2'
2, 1, 'Hello World again 2'
3, 2, 'Hw2...'
4, 2, 'Hw22...'
我想根据“sid”查询“Table1”。例如,如果 sid 为 1,那么我应该得到 2 行结果,其中包含“Table1”中的所有列,但只有“Table2”中的“text”列。像这样:
id, sid, text, text
1, 1, 'Hello World', 'Hello World2'
2, 1, 'Hello World again', 'Hello World again 2'
我正在尝试 INNER JOIN 但我得到了重复:
SELECT Table1.*, Table2.text FROM Table1 INNER JOIN Table2 ON Table1.sid = Table2.sid WHERE Table1.sid = 1;
但是我得到了重复的行!我该如何解决这个问题?我知道有很多类似的问题,但我找不到有这个问题的。
【问题讨论】:
标签: sql performance sqlite