Ios 从2个表中获取所有唯一的条目
我有两个表,我想从两个不重复的表中获取所有条目,例如。 如下图所示Ios 从2个表中获取所有唯一的条目,ios,sql,sqlite,Ios,Sql,Sqlite,我有两个表,我想从两个不重复的表中获取所有条目,例如。 如下图所示 Table1 MID, ITEM, PRICE, QUANTITY 1000 ab 10 5 2000 bc 20 6 Table2 MID, ITEM, PRICE, QUANTITY 3000 cd 30 4 1000 ed 10 7 结果应该是 MID, ITEM, PRICE, QUANTITY 3000 cd 30 4 1000
Table1
MID, ITEM, PRICE, QUANTITY
1000 ab 10 5
2000 bc 20 6
Table2
MID, ITEM, PRICE, QUANTITY
3000 cd 30 4
1000 ed 10 7
结果应该是
MID, ITEM, PRICE, QUANTITY
3000 cd 30 4
1000 ed 10 7
2000 bc 20 6
请告诉我使用哪个SQLite查询可以实现这一点?根据您的评论,您可以从
表1
中筛选出同样在表2
中的行:
select *
from Table1 t1
where not exists
(
select *
from Table2 t2
where t1.mid = t2.mid
and t1.item = t2.item
)
union all
select *
from Table2
我假设
(mid,item)
在每个单独的表中是唯一的。根据您的评论,您可以从表1
中筛选出也在表2中的行:
select *
from Table1 t1
where not exists
(
select *
from Table2 t2
where t1.mid = t2.mid
and t1.item = t2.item
)
union all
select *
from Table2
我假设(mid,item)
在每个单独的表中都是唯一的。下面是一种简单的逻辑表达方式:
select *
from table2
union all
select *
from table1
where table1.mid not in (select mid from table2)
从表2中获取所有信息。然后根据mid
从表1
中提取额外的行,下面是一种表达逻辑的简单方法:
select *
from table2
union all
select *
from table1
where table1.mid not in (select mid from table2)
从表2中获取所有信息。然后根据您的要求,从表1
中提取额外的行,根据mid
与mid进行比较,如果发现重复条目,则从表2中获得结果
此查询将帮助您:
select * from Table1
where MID not in ( select distinct MID from Table2 )
union
select mid,item,price,quantity from Table2;
看看这个
谢谢。根据您的要求,与MID进行比较,如果发现重复条目,请从表2中获得结果
此查询将帮助您:
select * from Table1
where MID not in ( select distinct MID from Table2 )
union
select mid,item,price,quantity from Table2;
看看这个
谢谢。为什么您的输出不包含1000 ab 10 5
如果您想要MID
的不同记录,那么您的结果应该是1000 ed 10 7
的标准是什么?如果表1和表2中存在相同的条目,则应选择表2中的记录如何定义“相同的条目”?我想与两个表的中间列进行比较,并从两个表中获得唯一的条目。要具体且切中要害,以便社区能够提供更准确的解决方案,这将有助于理解:)以及如果您想要不同的记录,为什么输出不包含1000 ab 10 5
MID
那么您的结果应该是1000 ed 10 7
的标准是什么?如果表1和表2中存在相同的条目,则应选择表2中的记录。您如何定义“相同的条目”?我想与两个表中的中间列进行比较,并从两个表中获得唯一的条目。请具体说明问题本身,以便社区能够提供更准确的解决方案,这将有助于理解:)我想通过比较中间列合并所有记录并获得所有唯一记录。中间列是唯一的,而不是同时包含中间和项目。如果需要,请修改一下。谢谢。我想合并所有记录,并通过比较中间列来获得所有唯一的记录。中间列只是唯一的,而不是中间和项目。如果需要,请修改一下。谢谢