SQL查询不重复数据语句

SQL查询不重复数据语句,第1张

打开sql2008数据库,无论哪个版本都行,方法和语句都是一样的

选择默认数据库为我们需要查询的数据库,输入SQL语句的时候,就会出现只能提示窗口

在这个表中,我们要统计同一个部门包含多少条记录

语句select

distinct

BELONG_DPID

from

BED可以查询出不同的部门有10个,如图所示

对语句进行完善,统计每个部门的行数

select

distinct

BELONG_DPID,COUNT(BELONG_DPID)

from

BED

查询结果如图所示,这样就筛选出各个部门的记录数

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

原数据重复的情况,你直接可以distinct掉,例如,学生表当中有两个重复的学号,你想取出不重复的,直接可以写:select

distinct

学号

from

学生表

第二种是查询粒度重复,比如你有一张表是存储区域的,分别为省、市、县三列。而你需要的是只查找不同的省市,则也可以使用distinct:select

distinct

省,市

from

区域

第三种则是分布重复,比如在join

的时候,左右两个表格存在一对多的关系,造成的重复,或者在聚合之后出现了维度重复,则这种相对来说比较麻烦,你需要在子查询中统计或查找出唯一值,然后再去关联,或者是按照一定的数据需求的取数规则,在查询结果后再进行聚合,取到唯一值。

不过不管怎么样,都是要看实际需求是什么样子的。大多可以用子查询和关联联合解决。

用SQL写一个生成随机的六位数代码如下:

declare @i int

set @i=0

while @i<1073

begin

update Actor set AtrPwd = RIGHT(100000000 + CONVERT(bigint,

ABS(CHECKSUM(NEWID()))), 6) --where aid=2

set @i=@i+1

end

各种不同数据库对SQL语言支持不同之处:

各种不同的数据库对SQL语言的支持与标准存在着细微的不同,这是因为,有的产品的开发先于标准的公布,另外,各产品开发商为了达到特殊的性能或新的特性,需要对标准进行扩展。

已有100多种遍布在从微机到大型机上的数据库产品SQL,其中包括DB2、SQL/DS、ORACLE、INGRES、SYBASE、SQLSERVER、DBASEⅣ、PARADOX、MICROSOFTACCESS等。

SQL语言基本上独立于数据库本身、使用的机器、网络、 *** 作系统,基于SQL的DBMS产品可以运行在从个人机、工作站到基于局域网、小型机和大型机的各种计算机系统上,具有良好的可移植性。

可以看出标准化的工作是很有意义的。早在1987年就有些有识之士预测SQL的标准化是“一场革命”,是“关系数据库管理系统的转折点”。

数据库和各种产品都使用SQL作为共同的数据存取语言和标准的接口,使不同数据库系统之间的互 *** 作有了共同的基础,进而实现异构机、各种 *** 作环境的共享与移植。

以上就是关于SQL查询不重复数据语句全部的内容,包括:SQL查询不重复数据语句、sql 怎么取不重复的数据的所有数据、求问Sql Server中怎样让其中一列随机生成六位数数字,不重复等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9862182.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存