面试了几个程序员,发现他们对于 mysql 的 distinct 关键字都存在错误的理解
資深大佬 : JJstyle 4
都认为这是一个函数,可以这样用:
select distinct(name), age from test;
目的是给 name 去重。虽然没有报错,但是其实上面的 sql 最终被解析成:
select distinct (name), age from test;
就是说 distinct 不是一个函数,而是 select 的一部分,结果是给 name,age 的组合数据去重,name 加括号在这里没有什么意义。
是那种工作了 3~5 年工作经验的,不知道 v 友们又没有发现这个问题。
大佬有話說 (41)