視頻學習鏈接 https://www.bilibili.com/video/av59623481/?p=58
調用:select 函數名(實參) [from 表];
關注點:
1. 函數名
2. 函數功能
分類:
1. 單行函數:處理數據
2. 分組函數:做統計使用,又稱爲統計函數、聚合函數、組函數
一、單行函數
1、字符函數
concat拼接
substr截取子串
upper轉換成大寫
lower轉換成小寫
trim去前後指定的空格和字符
ltrim去左邊空格
rtrim去右邊空格
replace替換
lpad左填充
rpad右填充
instr返回子串第一次出現的索引
length 獲取字節個數
2、數學函數
round 四捨五入
rand 隨機數
floor向下取整
ceil向上取整
mod取餘
truncate截斷
3、日期函數
now當前系統日期+時間
curdate當前系統日期
curtime當前系統時間
str_to_date 將字符轉換成日期
date_format將日期轉換成字符,指定格式
4、流程控制函數
if 處理雙分支
起到了if else的效果,if(expr1, expr2, expr3)
case語句 處理多分支
情況1:處理等值判斷
例:
SELECT salary AS '原始工資', department_id,
CASE department_id
WHEN 30 THEN salary*1.1
WHEN 40 THEN salary*1.2
WHEN 50 THEN salary*1.3
ELSE salary
END
FROM employees;
情況2:處理條件判斷
例:SELECT salary,
CASE
WHEN salary > 20000 THEN 'A'
WHEN salary > 15000 THEN 'B'
WHEN salary > 10000 THEN 'C'
ELSE 'D'
END AS 工資級別
FROM employees;
5、其他函數
version版本
database當前庫
user當前連接用戶
二、分組函數
sum 求和
max 最大值
min 最小值
avg 平均值
count 計數
特點:
1、以上五個分組函數都忽略null值,除了count(*)
2、sum和avg一般用於處理數值型
max、min、count可以處理任何數據類型
3、都可以搭配distinct使用,用於統計去重後的結果:SELECT SUM(salary), SUM(DISTINCT salary) FROM employees;
4、count的參數可以支持:
統計個數:
1. 字段、*、常量值,一般放1
2. 建議使用 count(*)