gpt4 book ai didi

sql - 使用SQLite合并两个查询的结果

转载 作者:行者123 更新时间:2023-12-03 18:44:45 24 4
gpt4 key购买 nike

假设我有以下表格:

Table A             Table B
| a | b | c | | a | b | c |
|---|---|---| |---|---|---|
| a | b | c | | a | b | c |
| a | c | d | | a | c | d |
| c | d | e | | a | b | c |
| f | g | h | | o | p | q |
| a | a | a | | a | b | c |


并且我想找到与两个表都不同的所有行。

这使我获得了A中不在B中的行:

SELECT a, b, c FROM A
EXCEPT
SELECT a, b, c FROM B;

| a | b | c |
|---|---|---|
| a | a | a |
| c | d | e |
| f | g | h |


这给了我来自B的不在A中的行:

SELECT a, b, c FROM B
EXCEPT
SELECT a, b, c FROM A;

| a | b | c |
|---|---|---|
| o | p | q |


所以结合我尝试使用的两个

SELECT a, b, c FROM A
EXCEPT
SELECT a, b, c FROM B
UNION
SELECT a, b, c FROM B
EXCEPT
SELECT a, b, c FROM A;


但它仍然只给我来自B的行。

我该如何从两个表中获取行?

| a | b | c |
|---|---|---|
| a | a | a |
| c | d | e |
| f | g | h |
| o | p | q |

最佳答案

尝试将个人括起来,但用括号括起来,然后进行并集:

select * from (
select a, b, c from a
except
select a, b, c from b
)
union
select * from (
select a, b, c from b
except
select a, b, c from a
);

关于sql - 使用SQLite合并两个查询的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42918281/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com