"本资源主要介绍了Oracle SQL中的常用组函数,包括AVG、COUNT、MAX、MIN和SUM,以及SELECT查询的基本语法和使用方法。通过示例展示了如何查询指定列、运用算数表达式以及处理运算优先级。"
在Oracle SQL数据库中,组函数是用于对一组数据进行聚合计算的关键工具,它们在数据查询和分析中扮演着重要角色。以下是这些函数的详细介绍:
1. AVG(DISTINCT|ALL|n): AVG函数用于计算一列数值的平均值。你可以选择是否考虑 DISTINCT 值(只计算不同值的平均),或者考虑 ALL 值(包括所有值)。如果指定了 n,则n 必须是一个数值列。
2. COUNT(DISTINCT|ALL|expr|*): COUNT函数用来计算一列的行数或满足特定条件的行数。DISTINCT 计算不同值的数量,ALL 包含所有行(包括NULL),expr 是一个表达式,* 代表所有非NULL列。
3. MAX(DISTINCT|ALL|expr): MAX函数返回一列的最大值,可以考虑 DISTINCT 或 ALL 值,expr 是要找最大值的列。
4. MIN(DISTINCT|ALL|expr): 类似地,MIN函数返回一列的最小值,同样有 DISTINCT 和 ALL 的选项。
5. SUM(DISTINCT|ALL|n): SUM函数用于计算一列数值的总和。你可以选择是否包含 DISTINCT 值,或者考虑所有 ALL 值。n 是数值列。
在SELECT查询中,我们可以结合这些组函数来获取所需的信息。例如,如果你想要计算s_emp表中所有员工的平均年薪,可以使用以下语句:
```sql
SELECT AVG(salary*12) AS average_annual_salary FROM s_emp;
```
此外,SELECT查询是SQL中最基础也是最常用的命令,用于从数据库中检索数据。基本语法包括指定要选择的列和来自的表,如:
```sql
SELECT <列名> FROM <表名>;
```
可以使用*通配符选择所有列,如:
```sql
SELECT * FROM s_emp;
```
还可以在查询中使用表达式、运算符、处理空值(NULL)、给字段起别名,以及对多列进行连接。例如,如果你想要显示每个部门的最高和最低工资,可以使用MAX和MIN函数:
```sql
SELECT dept_id, MAX(salary) AS max_salary, MIN(salary) AS min_salary
FROM s_emp
GROUP BY dept_id;
```
括号的使用能够帮助控制运算的优先级,确保复杂的表达式按照预期的方式计算。
理解并熟练使用这些组函数和SELECT查询是掌握Oracle SQL的基础,对于数据分析和报表生成等任务至关重要。通过不断的练习和实践,可以更有效地从数据库中提取和处理信息。