📜  选择不同的 - SQL (1)

📅  最后修改于: 2023-12-03 15:28:21.527000             🧑  作者: Mango

选择不同的 - SQL

在SQL中,通过使用SELECT语句并与DISTINCT关键字一起使用,可以选择不同的值。

使用DISTINCT关键字选择不同的值

DISTINCT关键字用于返回不同的值。以下是其基本语法:

SELECT DISTINCT column1, column2, ... FROM table_name;

其中,column1column2是要选择不同值的列。可以选择多个列。

例如,对于表employees中的salary列,可以选择不同的薪水:

SELECT DISTINCT salary FROM employees;
使用GROUP BY选择不同的值

GROUP BY子句用于按列的值对结果进行分组。例如,可以根据某个列的值将行分为不同的组,并计算每个组的总和,平均值等。

以下是使用GROUP BY选择不同的值的基本语法:

SELECT column1, column2, ... FROM table_name GROUP BY column1, column2, ...;

例如,对于同样的employees表中的salary列,可以根据部门(dept)分组,并选择分组后的最高薪水:

SELECT dept, MAX(salary) FROM employees GROUP BY dept;

上述查询将返回每个部门的最高薪水。

使用HAVING选择不同的值

HAVING子句用于在GROUP BY之后进一步筛选结果。

以下是HAVING子句的基本语法:

SELECT column1, column2, ... FROM table_name GROUP BY column1, column2, ... HAVING condition;

例如,当我们使用GROUP BY查询每个部门的平均薪水时,可以使用HAVING筛选掉平均薪水小于10000的部门:

SELECT dept, AVG(salary) FROM employees GROUP BY dept HAVING AVG(salary) > 10000;

上述查询将返回平均薪水大于10000的部门及其平均薪水。

总结

在SQL中,可以使用DISTINCT、GROUP BY和HAVING关键字选择不同的值。它们的使用会根据不同的需求和情况而有所不同。