一、本课目标
- 数学函数
- 字符串函数
- 日期和时间函数
- 系统信息函数
- 统计函数
二、数学函数
示例:
SELECT ABS(-1) #绝对值
SELECT CEILING(9.0) #大于等于我的最小的整数
SELECT FLOOR(9.0) #小于等于我的最大的整数
SELECT RAND() #返回0-1之间的随机数
#以某一个数作为种子,返回0-1之间的随机数,
#种子一旦确定,则每次生成的随机数固定
SELECT RAND(10)
SELECT SIGN(-1000) #正数返回1,负数返回-1,0返回0
三、字符串函数
示例:
#返回字符串中包含的字符数
SELECT CHAR_LENGTH('好好学习数据库')
#合并字符串(参数个数不固定)
SELECT CONCAT('我', '爱', '你', '课工场')
#替换字符串,从某个位置开始,替换某个长度,替换成什么
SELECT INSERT('我爱你课工场', 1, 3, '很爱');
#变小写
SELECT LOWER ('I LOVE YOU')
#变大写
SELECT UPPER ('I LOVE you')
#从哪边截取几个字符出来
SELECT LEFT('课工场欢迎你', 3)
SELECT RIGHT('课工场欢迎你', 3)
#替换
SELECT REPLACE('课工场欢迎你,你好', '你', '你们');
#截取字符串,从哪个位置截取多长
SELECT SUBSTR('课工场欢迎你',1,3)
#反转
SELECT REVERSE('课工场欢迎你')
四、日期和时间函数
示例代码:
#获取当前日期
SELECT CURRENT_DATE()
SELECT CURDATE()
#获取当前日期和时间
SELECT NOW()
SELECT LOCALTIME()
SELECT SYSDATE()
#分别获取日期中的某个部分
SELECT YEAR(NOW())
SELECT MONTH(NOW())
SELECT DAY(NOW())
SELECT HOUR(NOW())
SELECT MINUTE(NOW())
SELECT SECOND(NOW())
五、系统信息函数
示例代码:
#系统信息函数
SELECT VERSION()
SELECT USER()
六、聚合函数(统计函数)
image.png
1、count()函数查询的是非空行的个数,比如你要查姓名的话,因为设置的非空,所以肯定返回的个数跟名字的个数相同。但是要是查询邮箱的话,这行没有设置非空,所以其个数可能跟学生的个数不符合。