distinct的基本用法
一,house表,表结构如图
字段id,house_name,floor,address
二,上图除了id字段,其他字段都有重复的数据,在查询时可以使用distinct过滤重复数据,执行上面红框中的语句
select distinct house_name,floor,address from house
将会过滤字段中的重复数据, 执行结果如下面红框
三,如果带上id字段,
select distinct house_name,floor,address ,id from house
那么结果如下图,可以看出id字段所有数据都被查询出来,同时其他字段的重复数据也被查询出来了。
distinct和聚合函数
distinct和聚合函数使用时,要将distinct放在聚合函数里面,
例如:count(distinct house_name)
而不是distinct count(house_name)
如下图
distinct的位置
一,被distinct修饰的字段,一般情况下需要放在第一位
正确的 select distinct house house_name,id from house
错误的 select id , distinct house house_name from house
如图为正确
二,distinct修饰的字段并不总是放在第一位,
distinct和聚合函数一起使用,则distinct修饰的字段可以不用放在第一位,如下图