❶ sql语句中DISTINCT是什么意思
DISTINCT 这个关键词的意思是用于返回唯一不同的值。
在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。SELECT DISTINCT 表示查询结果中,去掉了重复的行;Distinct表示去掉重复的行。
(1)sqldistinct什么时候执行扩展阅读:
sql语句中使用DISTINCT的注意事项:
如果指定了 SELECT DISTINCT,那么 ORDER BY 子句中的项就必须出现在选择列表中,否则会出现错误。
比如SQL语句:SELECT DISTINCTCompanyFROM Orders order byCompanyASC是可以正常执行的。
但是如果SQL语句是:SELECT DISTINCTCompanyFROM Orders order byNumASC是不能正确执行的,在ASP中会提示“ORDER BY 子句与 (Num) DISTINCT 冲突”错误。
SQL语句修改成:SELECT DISTINCTCompany,NumFROM Orders order byNumASC可以正常执行
参考资料:网络-DISTINCT
❷ SQL中 oderby和distinct哪一个先执行
逻辑顺序是DISTINCT先执行,ORDER BY 最后执行。但是查询分析器可能会根据具体的查询语句进行优化,实际执行计划中的顺序可能会不同。
❸ sql什么时候用 distinct
distinct关键字 筛选表中重复的数据并只显示一条
当表中重复数据过多时,举个列子 加入有多个人名name叫张三
select distinct name,sex,city from tablename
会筛选姓名重复的记录并只显示一条
❹ sql:关于distinct的用法
不分先后的。因为distinct都是用在查询上面的,直接查询出来就行了
比如:重复出现重复数据的字段name
select *, count(distinct name),count(name) from table group by name
查询出所有字段的信息外还有“结果中该字段内容出现数量”、“去除重复前字段内容出现数量”.这样使用应该能看懂吧。
❺ sql语句去重 distinct是什么
distinct用来查询不重复记录的条数,即distinct来返回不重复字段的条数(count(distinct id)),其原因是distinct只能返回他的目标字段,而无法返回其他字段。
对单一一个字段使用distinct去除重复值时,会过滤掉多余重复相同的值,只返回唯一的值。
对多个字段同时使用distinct去除重复值时,distinct字段必须放在第一个字段前面,不能放在其他字段的后面。既distinct必须放在select后面,第一个字段的前面。同时,使用distinct多个字段去除重复数据时,必须满足各行中各列所对应的值都相同才能去除重复值,如果有其中一列的值不相同,那就表示这些数据不是重复的数据,不会过滤掉。
用法注意
1、distinct【查询字段】,必须放在要查询字段的开头,即放在第一个参数。
2、只能在SELECT语句中使用,不能在INSERT,DELETE,UPDATE中使用。
3、DISTINCT表示对后面的所有参数的拼接取不重复的记录,即查出的参数拼接每行记录都是唯一的。
4、不能与all同时使用,默认情况下,查询时返回的就是所有的结果。
❻ 大师们在sql.server数据库中distinct与where谁先执行 小弟我是新手,帮帮忙呀
肯定是先查数据,where先执行。
where :有条件地从表中选取数据。
distinct :去掉重复数据,是对已经选取的数据进行加工。
❼ distinct用法 SQL用法
对整个select 来说的话.前面加一个distinct表示把重复的记录去掉的意思
id name
1 张三
2 王三
3 李四
4 张三
2 王三
select distinct id,name from t1
id name
1 张三
2 王三
3 李四
4 张三
select distinct name from t1
name
张三
王三
李四
❽ SQL中distinct的用法是什么
在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 distinct用于返回唯一不同的值。
表A:
返回的结果为两行,这说明distinct并非是对xing和ming两列“字符串拼接”后再去重的,而是分别作用于了xing和ming列。
3.COUNT统计
select count(distinct name) from A; --表中name去重后的数目, SQL Server支持,而Access不支持
count是不能统计多个字段的,下面的SQL在SQL Server和Access中都无法运行。
select count(distinct name, id) from A;
若想使用,请使用嵌套查询,如下:
select count(*) from (select distinct xing, name from B) AS M;
4.distinct必须放在开头
select id, distinct name from A; --会提示错误,因为distinct必须放在开头
5.其他
distinct语句中select显示的字段只能是distinct指定的字段,其他字段是不可能出现的。例如,假如表A有“备注”列,如果想获取distinc name,以及对应的“备注”字段,想直接通过distinct是不可能实现的。但可以通过其他方法实现关于SQL Server将一列的多行内容拼接成一行的问题讨论
❾ distinct在SQL语句里面的用法,大家来看看
首先要解释的是:Distinct是避免
查询里的重复行,不是针对某一列的。
简单举例,数据表这样写:
姓名
年龄
性别
----------------------
张三
男
25
李四
女
25
王五
男
42
那么我这么写:
select distinct * from 表名
毫无效果,因为压根就没重复行,如果把语句减少一个查询字段:
select distinct 年龄 from 表名
那结果就只有两条了。