两张表,字段名一样,从一张表A中查询到另外一张表B中没有的记录,SQL语句怎么写?
答案:2 悬赏:80 手机版
解决时间 2021-11-08 02:27
- 提问者网友:世勋超人
- 2021-11-07 04:54
两张表,字段名一样,从一张表A中查询到另外一张表B中没有的记录,SQL语句怎么写?
最佳答案
- 五星知识达人网友:从此江山别
- 2021-11-07 06:06
select * from B where 字段 in (select 字段 from A)
查询A中是否在B中存在
字段改成你要查的字段
提取的时候用 select distinct 字段 from A where 字段 not in (select 字段 from B) 插入时候用追问这个行不行啊。表中所有字段联合唯一,很多记录只有一个字段的数据不一样,会不会导致有的记录查询不出来啊追答你去重复总得有个标准吧,要以哪个字段为标准就distinct哪个字段,不然去不了重复,就像你说的表中所有字段联合唯一,没有一个作为标准的就没法判断的追问表只有两个字段,Date, Time
一个Date可以有多个Time对应
但是表中可以有多个Date例如
Date Time
2014-8-20 17:32:04
2014-8-20 17:32:15
2014-8-20 17:32:20
2014-8-21 17:32:23
2014-8-21 17:32:29追答我知道可以有多条,你的重复标准是什么,就像你列出来的都算不重复?我说的是你要去重复总得有标准是不,你标准都没有,怎么去重追问重复的标准是所有字段都一样啊
2014-8-21 11:31:49
2014-8-21 11:31:49
A.Date == B.Data && A.Time == B.Time
查询A中是否在B中存在
字段改成你要查的字段
提取的时候用 select distinct 字段 from A where 字段 not in (select 字段 from B) 插入时候用追问这个行不行啊。表中所有字段联合唯一,很多记录只有一个字段的数据不一样,会不会导致有的记录查询不出来啊追答你去重复总得有个标准吧,要以哪个字段为标准就distinct哪个字段,不然去不了重复,就像你说的表中所有字段联合唯一,没有一个作为标准的就没法判断的追问表只有两个字段,Date, Time
一个Date可以有多个Time对应
但是表中可以有多个Date例如
Date Time
2014-8-20 17:32:04
2014-8-20 17:32:15
2014-8-20 17:32:20
2014-8-21 17:32:23
2014-8-21 17:32:29追答我知道可以有多条,你的重复标准是什么,就像你列出来的都算不重复?我说的是你要去重复总得有标准是不,你标准都没有,怎么去重追问重复的标准是所有字段都一样啊
2014-8-21 11:31:49
2014-8-21 11:31:49
A.Date == B.Data && A.Time == B.Time
全部回答
- 1楼网友:轻熟杀无赦
- 2021-11-07 06:35
用这个函数distinct去除重复条件根据时间限制 , 或者B表 - A表 minus函数
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯