SQL 函数学习笔记
1. 概述
函数是SQL中一个非常有用的工具,它可以让我们更加方便地处理数据。SQL中有很多内置的函数,例如聚合函数、字符串函数等等。同时,我们也可以自定义函数以满足我们特定的需求。
2. 聚合函数
聚合函数用于对数据进行汇总统计。SQL中常见的聚合函数包括COUNT、SUM、AVG、MAX、MIN等。
2.1 COUNT函数
COUNT函数用于统计某个表或者某个列中的行数。
2.1.1 语法
Copy CodeSELECT COUNT(column_name)
FROM table_name;
2.1.2 实例
假设有如下student表:
id | name | age |
---|---|---|
1 | Tom | 18 |
2 | Jack | 20 |
3 | Mary | 19 |
要统计该表中的行数,可以使用以下SQL语句:
Copy CodeSELECT COUNT(*)
FROM student;
执行该语句后,会返回如下结果:
Copy CodeCOUNT(*)
-------
3
2.2 SUM函数
SUM函数用于计算某个列的数值之和。
2.2.1 语法
Copy CodeSELECT SUM(column_name)
FROM table_name;
2.2.2 实例
假设有如下score表:
id | subject | score |
---|---|---|
1 | Maths | 80 |
2 | English | 90 |
3 | Maths | 85 |
要计算该表中Maths科目的总分数,可以使用以下SQL语句:
Copy CodeSELECT SUM(score)
FROM score
WHERE subject = 'Maths';
执行该语句后,会返回如下结果:
Copy CodeSUM(score)
----------
165
2.3 AVG函数
AVG函数用于计算某个列的平均值。
2.3.1 语法
Copy CodeSELECT AVG(column_name)
FROM table_name;
2.3.2 实例
假设有如下salary表:
id | name | salary |
---|---|---|
1 | Tom | 5000 |
2 | Jack | 6000 |
3 | Mary | 7000 |
要计算该表中薪水的平均值,可以使用以下SQL语句:
Copy CodeSELECT AVG(salary)
FROM salary;
执行该语句后,会返回如下结果:
Copy CodeAVG(salary)
-----------
6000
3. 字符串函数
字符串函数用于对字符串进行相关的操作,例如截取、替换等。
3.1 LEFT函数
LEFT函数用于从左边开始截取字符串。
3.1.1 语法
Copy CodeSELECT LEFT(string, length)
FROM table_name;
3.1.2 实例
假设有如下name表:
id | name |
---|---|
1 | Zhangsan |
2 | Lisi |
3 | Wangwu |
要截取该表中所有姓名的前两个字母,可以使用以下SQL语句:
Copy CodeSELECT LEFT(name, 2)
FROM name;
执行该语句后,会返回如下结果:
Copy CodeLEFT(name, 2)
-------------
Zh
Li
Wa
3.2 REPLACE函数
REPLACE函数用于将字符串中的某个子字符串替换为另一个字符串。
3.2.1 语法
Copy CodeSELECT REPLACE(string, old_value, new_value)
FROM table_name;
3.2.2 实例
假设有如下phone表:
id | phone |
---|---|
1 | 13812345678 |
2 | 13987654321 |
3 | 13698765432 |
要将该表中所有手机号的前三位替换为‘***’,可以使用以下SQL语句:
Copy CodeSELECT REPLACE(phone, LEFT(phone, 3), '***')
FROM phone;
执行该语句后,会返回如下结果:
Copy CodeREPLACE(phone, LEFT(phone, 3), '***')
-------------------------------------
***12345678
***87654321
***98765432
以上是SQL函数的一些常见用法,更多细节内容需要根据具体情况查阅文档。