怎样用Sql语句判断一张表中的两条数据相同

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样用Sql语句判断一张表中的两条数据相同相关的知识,希望对你有一定的参考价值。

参考技术A 表及字段:table1(a,b,c,d)
select
a,b,c,d
from
(
select
a,b,c,d,count(1)
nums
from
table1
group
by
a,b,c,d)
where
nums>1
oracle

select
a,b,c,d,count(1)
from
table1
group
by
a,b,c,d
having
count(1)>1
注:前提是没唯一约束,主键等约束,因为他们是唯一的,所以对于有这些约束的表是不会存在重复的,不过不考虑这样的字段在查询时就不用列出这些字段分组了

sql如何实现从一张表检索数据插入到另外一张表中的指定字段?

insert into data0022 (TTYPE,INVENTORY_PTR,WHOUSE_PTR,LOCATION_PTR,QUANTITY,CURRENCY_PTR,QUAN_IN_INSP,QUAN_TO_BE_SHIPPED,QUAN_TO_BE_STOCKED,QUAN_RETURNED,QUAN_SCRAPPED,QUAN_STOCKED,QUAN_ISSUED_TO_FACT,QUAN_RTNED_FM_FACT,QUAN_ON_HAND,QUAN_ASSIGN,QUAN_IN_INSP1,QUAN_TO_BE_SHIPPED1,QUAN_TO_BE_STOCKED1,QUAN_RETURNED1,QUAN_SCRAPPED1,QUAN_TO_BE_scr,QUAN_TO_BE_scr1,QUAN_USEASIS,quan_send,quan_invoiced)values('2',rekypr from BS_Data0022,'2',LOCATION_PTR from BS_Data0022,QUANTITY from BS_Data0022,'1','0.0','0.0','0.0','0.0','0.0',QUANTITY from BS_Data0022,'0','0','0.0','0','0.0','0.0','0.0','0.0','0.0','0.0','0.0','0','0','0.0')这样写不行。

参考技术A insert into t1(aa,bb)
select aa,bb from t2 where 条件
参考技术B 应该是
insert into data0022 (TTYPE,INVENTORY_PTR,WHOUSE_PTR,LOCATION_PTR,QUANTITY,CURRENCY_PTR,QUAN_IN_INSP,QUAN_TO_BE_SHIPPED,QUAN_TO_BE_STOCKED,QUAN_RETURNED,QUAN_SCRAPPED,QUAN_STOCKED,QUAN_ISSUED_TO_FACT,QUAN_RTNED_FM_FACT,QUAN_ON_HAND,QUAN_ASSIGN,QUAN_IN_INSP1,QUAN_TO_BE_SHIPPED1,QUAN_TO_BE_STOCKED1,QUAN_RETURNED1,QUAN_SCRAPPED1,QUAN_TO_BE_scr,QUAN_TO_BE_scr1,QUAN_USEASIS,quan_send,quan_invoiced)
select '1','0.0','0.0','0.0','0.0','0.0',QUANTITY,'0','0','0.0','0','0.0','0.0','0.0','0.0','0.0','0.0','0.0','0','0','0.0' from BS_Data0022

其中的字段是否对应请自己检查,这里只是提供方法。

这类问题的方法是:
insert into 目的表(字段1,字段2,...) select 字段1,字段2,... from 源表 where 条件
其中 where 条件 如果没有按条件搜索可以去掉
参考技术C insert into 表1 (字段名1,字段名2......) select 字段名1,字段名2.... from 表2 where 条件

以上是关于怎样用Sql语句判断一张表中的两条数据相同的主要内容,如果未能解决你的问题,请参考以下文章

sql server 中 怎样判断一张表中 数据 是 相同的

在sqlserver中有一张表,表中有一字段用来记录 录入数据的时间,怎样判断表中的数据是当前月份录入的

两个表匹配,匹配上把一张表的值复制到另一张表的sql语句怎么写

SQL语句:对比两张表的数据并筛选出数据不同的

sql查询:使用内连接查询两张表的时候,如果左边表的一条记录对应了右边表的两条记录,结果显示排列问题

SQL 如何将一个表中的两条或多条拥有相同ID的记录合并为一条?