当前位置:首页 » 编程语言 » sql不重复
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql不重复

发布时间: 2022-01-12 16:45:06

sql 怎么取不重复的数据的所有数据

SQL数据重复分几种情况,一种是原数据重复,第二种是粒度重复,第三种是分布重复。

原数据重复的情况,你直接可以distinct掉,例如,学生表当中有两个重复的学号,你想取出不重复的,直接可以写:select distinct 学号 from 学生表
第二种是查询粒度重复,比如你有一张表是存储区域的,分别为省、市、县三列。而你需要的是只查找不同的省市,则也可以使用distinct:select distinct 省,市 from 区域
第三种则是分布重复,比如在join 的时候,左右两个表格存在一对多的关系,造成的重复,或者在聚合之后出现了维度重复,则这种相对来说比较麻烦,你需要在子查询中统计或查找出唯一值,然后再去关联,或者是按照一定的数据需求的取数规则,在查询结果后再进行聚合,取到唯一值。
不过不管怎么样,都是要看实际需求是什么样子的。大多可以用子查询和关联联合解决。

❷ SQL筛选不重复数据的案例

delet
from
表名
where
PRP_Number
not
int
(select
PRP_Number,count(*)
from
表名
where
gourp
by
PRP_Number
having
count(*)>1
)
and
PRP_Number
not
in
(select
PRP_Number
from
表名
where
convaert(int,PRP_Number)<
convert(int,substring(
(select
PRP_Number
from
表名
where
PRP_Number
like
--这里写你不要删除重复的P0002-P0003之间的第一个P0002,如下
'??????????_P0002')
,0,charindex('_'))
and
convaert(int,PRP_Number)>
convert(int,substring(
(select
PRP_Number
from
表名
where
PRP_Number
like
--这里写你不要删除重复的P0002-P0003之间的最后的P0003,如下
'??????????_P0003')
,0,charindex('_'))
)
--P0001-P0002我就不写了,你按照上面的思路你自己套用吧
--慎用,请看清再执行

❸ sql语句选不重复的值的问题。

select B.*
from (
select 设备ID, max(维护时间) as ModTime
from tableA group by 设备ID
) A
Left join tableA B on A.设备ID=B.设备ID and A.ModTime = B.维护时间

您好,这样写应该就是你要的.

❹ SQL对不重复项进行计数

那如果要不重复的,就要把分组去掉,语句改成:
select count(Distinct Class)as Class from ClassDate where Machine='020-C03' and DateTime='2014-7-18'

❺ 求sql显示(查询)不重复数据命令

必须有唯一标识列才能过滤重复,下面给你个思路:

生成唯一id列:
select id=identity(1,1),bianhao、name、jiage、chandi、shuliang into #tmp_tb from 表1

查询显示name不重复的所有数据:
select * from #tmp_tb t1 where not exists (select 1 from #tmp_tb t2 where t2.name=t1.name and t2.id<t1.id)

bianhao列为唯一标示列,显示大的小的都可以
--------------------
那直接查就可以了:
select * from kucun t1 where not exists (select 1 from kucun t2 where t2.name=t1.name and t2.bianhao<t1.bianhao)

❻ sql语句求解答,统计不重复的个数

没有重名的情况下:select count(distinct 姓名) from table
有重名的情况(但是重名的人年龄不一样):select count(distinct(姓名,年龄)) from table
如果重名的人,年龄还一样,那这张表就不能只有这三行了。

❼ SQL查询不重复数据语句

打开sql2008数据库,无论哪个版本都行,方法和语句都是一样的
选择默认数据库为我们需要查询的数据库,输入SQL语句的时候,就会出现只能提示窗口
在这个表中,我们要统计同一个部门包含多少条记录
语句【select
distinct
BELONG_DPID
from
BED】可以查询出不同的部门有10个,如图所示
对语句进行完善,统计每个部门的行数
select
distinct
BELONG_DPID,COUNT(BELONG_DPID)
from
BED
查询结果如图所示,这样就筛选出各个部门的记录数

❽ sql 查询不重复的数据

--下面是查询出有重复ID的数据,具体的删除你自己弄,因为主从表关系限制,我就不写删除语句啦,你自己看情况删除
select * from proct_info
where id in (select id from proct_info
group by type_id
)

select id from proct_info_pic
where infoid in (select id from proct_info
group by type_id )

❾ “sql”怎么查询不重复数据

1、select distinct 查询字段名 。

2、查询from 表名 。


3、设置where 查询条件。

4、输入distinct是去除重复内容的。

❿ sql 查询不重复记录

SQL查询不重复记录,操作如下:
1、假如要查询t1表中name字段中所有的姓名,并去除重复。
2、可以使用如下语句:
SELECT DISTINCT name FROM t1;3、其中DISTINCT是去重功能。