DISTINCT

1.1.位置

1.1.1.单独的distinct只能放在开头,否则报错

e.g. 

Select  player_id,distinct(task_id) from task;    错误

Select  distinct(task_id),taskid from task;      正确

1.1.2.与其他函数使用时候,没有位置限制

Select player_id,count(distinct(task_id))from task;

1.2.用法

1.2.1.在count计算不重复的记录的时候能用到比如SELECT COUNT( DISTINCT player_id ) FROM task;就是计算talbebname表中id不同的记录有多少条

1.2.2.在需要返回记录不同的id的具体值的时候可以用
比如SELECT DISTINCT player_id FROM task;
返回talbebname表中不同的id的具体的值

例外:

SELECT DISTINCT player_id, task_id FROM task;

实际上返回的是player_id与task_id同时不相同的结果,也就是DISTINCT同时作用了两个字段,必须得player_id与task_id都相同的才被排除了,与我们期望的结果不一样,我们期望的是player_id不同被过滤

原文地址:https://www.cnblogs.com/zhu-tingting/p/7536898.html