测试必备的Mysql常用sql语句系列
https://www.cnblogs.com/poloyy/category/1683347.html
前言
- 我们使用select进行数据查询时是会返回所有匹配的记录,如果表中某些字段没有做唯一性约束,那么这些字段的值就可能存在重复值
- 有时候我们想看看这个字段到底有哪几种值,这个时候需要去重方便查看,distinct关键字能发挥作用了
distinct特别注意
当使用distinct的时候,只会返回指定的字段,其他字段都不会返回,所以查询语句就变成去重查询语句
常见使用场景:
- 查看去重字段有哪几种值【返回值】
- 查看去重字段有多少个值【返回数量】
distinct的语法格式
SELECT DISTINCT <字段名>,<字段名>, FROM <表名>;
知识点
- distinct只能在select语句中使用
- distinct必须在所有字段前面
- 如果有多个字段需要去重,则会对多个字段进行组合去重,即所有字段的数据重复才会被去重
实战栗子
我们先看看表里面有哪些数据
栗子一:对单个字段去重
select distinct age from yyTest;
栗子二:对多个字段去重
select distinct sex,age from yyTest;
栗子三:查看去重字段有多少种值
select count(distinct age) from yyTest;
错误写法的栗子
select username,distinct age from yyTest; select distinct age,distinct username from yyTest;