MySQL必知必会(三)阅读笔记

第十一章 使用数据处理函数

函数

Upper()将文本转换为大写

Lower()将串转为小写

SELECT	vend_name,Upper(vend_name)
FROM vendors
ORDER BY vend_name;

在这里插入图片描述

SELECT	vend_name,Lower(vend_name)
FROM vendors
ORDER BY vend_name;

在这里插入图片描述

Left(字符串,数组) 返回串左边的字符

Right(字符串,数组) 返回串右边的字符

SELECT	Left('一二三四',2)

在这里插入图片描述

Length() 返回串的长度

SELECT	Length('一'),Length('1'),Length('a'),Length('a一1')

在这里插入图片描述

Locate()找出一个串的子串,返回子串的起始位置

SELECT	Locate('12','323123'),
				Locate('1','32121'),
				Locate('a','a')

在这里插入图片描述

Soundex()返回串的SOUNDEX值(转换为发音)

SELECT cust_name,cust_contact
FROM customers
WHERE Soundex(cust_contact) = Soundex('Y Lie')

在这里插入图片描述
Y Lie 和Y Lee匹配

日期和时间处理函数

函数 说明
Now() 返回当前日期时间
CurDate 返回当前日期
CurTime 返回当前时间
Data() 返回日期部分
Year() 返回年部分
Month() 返回月部分
Day 返回日部分
DayOfWeek() 对于一个日期返回对应星期几
Time 返回时间部分
Hour() 返回小时部分
Minute() 返回分钟部分
Second 返回秒部分

修改时间:AddDate(date,INTERVAL expr unit)

修改时间:Date_Add(date,INTERVAL expr unit)

含义:date时间,expr 表达式值,unit表达式对应的时间单位
unit : SECOND,MINUTE,HOUR,DAY,MONTH,YEAR

SELECT ADDDATE(NOW(),INTERVAL -60 SECOND)
SELECT ADDDATE('2020-2-23',INTERVAL -1 MINUTE)
SELECT ADDDATE(NOW(),INTERVAL -1 HOUR)
SELECT ADDDATE(NOW(),INTERVAL -1 DAY)
SELECT ADDDATE(NOW(),INTERVAL -1 MONTH)
SELECT ADDDATE(NOW(),INTERVAL -1 YEAR)

AddTime(time,expr) 函数用于执行时间的加法运算

含义:time 是一个时间或日期时间表达式,expr 是一个时间表达式

SELECT ADDTIME('12:30:00','1:30:30')

DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据

格式 描述
%Y 年,4 位
%y 年,2 位
%M 月名
%b 缩写月名
%c 月,数值
%m 月,数值(00-12)
%D 带有英文前缀的月中的天
%d 月的天,数值(00-31)
%e 月的天,数值(0-31)
%W 星期名
%a 缩写星期名
%T 时间, 24-小时 (hh:mm:ss)
%r 时间,12-小时(hh:mm:ss AM 或 PM)
%p AM 或 PM
%H 小时 (00-23)
%k 小时 (0-23)
%h 小时 (01-12)
%I 小时 (01-12)
%i 分钟,数值(00-59)
%S 秒(00-59)
%s 秒(00-59)
%f 微秒
SELECT DATE_FORMAT(NOW(),'%y %m %d %h:%i %p'),
DATE_FORMAT(NOW(),'%Y-%M-%D %W %H:%I:%s'),
DATE_FORMAT(NOW(),'%W %b %y'),
DATE_FORMAT(NOW(),'%d %b %Y %T:%f')

在这里插入图片描述
在这里插入图片描述

SELECT cust_id,order_num,order_date
FROM orders
WHERE order_date = '2005-09-01';

仅匹配’2005-09-01 00:00:00’时间
在这里插入图片描述

//查询9月份
SELECT cust_id,order_num,order_date
FROM orders
WHERE Date(order_date) BETWEEN '2005-09-01' AND '2005-09-31';
//另一种写法
SELECT cust_id,order_num,order_date
FROM orders
WHERE Year(order_date) =2005 AND Month = 9;

在这里插入图片描述

数值处理函数

函数 说明
Abs() 绝对值
Cos() 余弦
Sin() 正弦
Tan() 正切
Mod() 返回除操作的余数
Sqrt() 返回一个数的平方根
Rand() 随机数
Pi() 圆周率
SELECT Mod(9,4),Rand(),Sqrt(9),Abs(-3),pi()

在这里插入图片描述

第十二章汇总数据

聚集函数

运行在行组上,计算和返回单个值的函数

函数 说明
AVG() 返回某列的平均值
COUNT() 返回某列的行数
MAX() 最大值
MIX() 最小值
SUM()
SELECT AVG(prod_price),COUNT(*),MAX(prod_price),MIN(prod_price),SUM(prod_price)
FROM products

在这里插入图片描述

聚集不同值,DISTINCT

组合聚集函数

发布了5 篇原创文章 · 获赞 0 · 访问量 96

猜你喜欢

转载自blog.csdn.net/weixin_41246909/article/details/104465055