1. 程式人生 > 實用技巧 >MySQL基礎-常用函式

MySQL基礎-常用函式

單行函式

字元函式

1.length 獲取引數值的位元組個數
SELECT LENGTH('zero');
 
2.concat 拼接字串
SELECT CONCAT(last_name,'_',first_name) 姓名 FROM employees;
3.upper變大寫、lower變小寫
SELECT UPPER('zero');
SELECT LOWER('ZERO');
 
4.substr、substring
注意:索引從1開始
擷取從指定索引處後面所有字元
SELECT SUBSTR('李莫愁愛上了陸展元',7)  out_put;
擷取從指定索引處指定字元長度的字元
SELECT
SUBSTR('李莫愁愛上了陸展元',1,3) out_put; 5.instr 返回子串第一次出現的索引,如果找不到返回0 SELECT INSTR('李莫愁愛上了陸展元','沒有') AS out_put; 6.trim 去掉指定字元 SELECT TRIM('aa' FROM 'aaaaaaaaa張aaaaaaaaaaaa翠山') AS out_put; 7.lpad 用指定的字元實現左填充指定長度 SELECT LPAD('殷素素',2,'*') AS out_put; 8.rpad 用指定的字元實現右填充指定長度 SELECT RPAD('殷素素',12,'ab') AS
out_put; 9.replace 替換 SELECT REPLACE('周芷若周芷若周芷若周芷若張無忌愛上了周芷若','周芷若','趙敏') AS out_put;

數學函式

1.round 四捨五入
SELECT ROUND(-1.55);
SELECT ROUND(1.567,2);
 
2.ceil 向上取整,返回>=該引數的最小整數
SELECT CEIL(-1.02);
 
3.floor 向下取整,返回<=該引數的最大整數
SELECT FLOOR(-9.99);
 
4.truncate 截斷
SELECT TRUNCATE(1.69999,1);
 
5.mod取餘 SELECT MOD(10,-3); SELECT 10%3;

日期函式

1.now 返回當前系統日期+時間
SELECT NOW();

2.curdate 返回當前系統日期,不包含時間
SELECT CURDATE();

3.curtime 返回當前時間,不包含日期
SELECT CURTIME();

4.可以獲取指定的部分,年、月、日、小時、分鐘、秒
SELECT YEAR(NOW()) 年;
SELECT YEAR('1998-1-1') 年;

SELECT  YEAR(hiredate) 年 FROM employees;

SELECT MONTH(NOW()) 月;
SELECT MONTHNAME(NOW()) 月;

5.str_to_date 將字元通過指定的格式轉換成日期
SELECT STR_TO_DATE('1998-3-2','%Y-%c-%d') AS out_put;
 
6.date_format 將日期轉換成字元
SELECT DATE_FORMAT(NOW(),'%y年%m月%d日') AS out_put;

流程控制函式

1.if函式: if else 的效果
SELECT IF(10<5,'','');
 
2.case函式的使用一: switch case 的效果
 SELECT salary 原始工資,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 AS 新工資
FROM employees;
 
3.case 函式的使用二:類似於 多重if
SELECT salary,
CASE 
WHEN salary>20000 THEN 'A'
WHEN salary>15000 THEN 'B'
WHEN salary>10000 THEN 'C'
ELSE 'D'
END AS 工資級別
FROM employees;

分組函式

求和
SELECT SUM(salary) FROM employees;
求平均數
SELECT AVG(salary) FROM employees;
求最小值
SELECT MIN(salary) FROM employees;
求最大值
SELECT MAX(salary) FROM employees;
求個數
SELECT COUNT(salary) FROM employees;

其他函式

SELECT VERSION();
SELECT DATABASE();
SELECT USER();