×

sql语句去重 distinct

SQL语句对某字段去重?SQL多个字段如何去重

admin admin 发表于2022-07-09 19:50:57 浏览92 评论0

抢沙发发表评论

SQL语句对某字段去重


sql语句通过DISTINCT关键字去重, 用于返回唯一不同的值。DISTINCT关键字需要搭配SELECT 语句使用,语法为SELECT DISTINCT 列名称 FROM 表名称。如果指定了 SELECT DISTINCT,那么 ORDER BY 子句中的项就必须出现在选择列表中,否则会出现错误。

扩展资料:

distinct这个关键字用来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是distinct只有用二重循环查询来解决,而这样对于一个数据量非常大的站来说,无疑是会直接影响到效率的。-sql语句去重 distinct

distinct必须放在开头,distinct语句中select显示的字段只能是distinct指定的字段,其他字段是不可能出现的。


SQL多个字段如何去重


SQL语句为:select distinct telephone (属性) from test(表名)

因为号码有重复,所以以号码telephone来查询,配合distinct,使得查询结果不重复。

使用关键字:distinct 即可去重。

扩展资料:

选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。

1、选择所有列

例如,下面语句显示testtable表中所有列的数据:

SELECT * FROM testtable

2、选择部分列并指定它们的显示次序

查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。

3、更改列标题

在选择列表中,可重新指定列标题。定义格式为:

列标题=列名 列名 列标题

如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列标题: SELECT 昵称=nickname,电子邮件=email FROM testtable。

4、删除重复行

SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。-sql语句去重 distinct

5、限制返回的行数

使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是表示一百分数,指定返回的行数等于总行数的百分之几。TOP命令仅针对SQL Server系列数据库,并不支持Oracle数据库。-sql语句去重 distinct

参考资料来源:百度百科-结构化查询语言


sql去重是什么意思


SQL中,DISTINCT关键词表示去掉重复的行。

SELECT DISTINCT表示查询结果中,去掉了重复的行。在数据库表中,数据可能会包含重复值。有时用户希望仅仅列出不同(distinct)的值。可通过关键词DISTINCT用于返回唯一不同的值。如果要从 “Company“ 列中选取所有的值,使用 SELECT 语句:SELECT Company FROM Orders。-sql语句去重 distinct

扩展资料:

如果指定了SELECT DISTINCT,那么ORDER BY子句中的项就必须出现在选择列表中,否则会出现错误。

比如SQL语句:SELECT DISTINCT Company FROM Orders order by Company ASC是可以正常执行的。

但是如果SQL语句是:SELECT DISTINCT Company FROM Orders order by Num ASC是不能正确执行的,在ASP中会提示“ORDER BY子句与(Num) DISTINCT冲突”错误。-sql语句去重 distinct

SQL语句修改成:SELECT DISTINCT Company,Num FROM Orders order by Num ASC可以正常执行。