gpt4 book ai didi

mysql - DISTINCT 作为子句或函数

转载 作者:太空宇宙 更新时间:2023-11-03 11:47:02 25 4
gpt4 key购买 nike

我正在用 DISTINCT 关键字做一些实验,一些特殊情况引起了我的注意。

首先我注意到我可以在 DISTINCT 中加上一些括号,例如:

SELECT DISTINCT(NAME) FROM EMPLOYEE;

没问题,而

SELECT DISTINCT(NAME, SURNAME) FROM EMPLOYEE;

给我一​​个错误。为什么?

允许这样的操作有什么意义?

 SELECT DISTINCT(NAME), COUNT(SURNAME) FROM EMPLOYEE;

最佳答案

DISTINCT(或 DISTINCTROW)不是函数;它是 SELECT 的一个选项告诉 MySQL 从查询生成的结果集中去除重复行的语句。默认情况下,它返回所有生成的行,包括重复项。

也可以和COUNT()一起使用聚合函数(如 COUNT(DISTINCT expr) ),它具有相同的含义:它忽略重复项。

因为 DISTINCT 不是函数,DISTINCT(NAME) 被解释为 DISTINCT 后跟表达式 (NAME)(与 NAME 相同)。

SELECT DISTINCT(NAME, SURNAME) FROM EMPLOYEE 不起作用,因为 (NAME, SURNAME) 不是有效的 MySQL 表达式。

关于mysql - DISTINCT 作为子句或函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37909808/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com