MySQL數學函式 查詢資料
絕對值函式ABS(x)
SELECT ABS(-2); 2
獲取整數的函式 CEIL(X) 返回不小於x的最小整數值 FLOOR(X) 返回不大於x的最大整數值
SELECT CEIL(-3.35); -3
SELECT FLOOR(-3.35); -4
四捨五入函式 ROUND(X) ROUND(X,Y)保留小數點後Y位
SELECT ROUND(-1.14); -1
SELECT ROUND(1.38,1); 1.4
CONCAT(S1,S2,...)返回結果為連線引數產生的字串,或許有一個或多個引數。如有任何一個引數為null,則返回null
SELECT CONCAT('MYSQL','5.5'),CONCAT('MY',NULL,'SQL'); MYSQL5.5 NULL
CONCAT_WS(X,S1,S2,...)是CONCAT()的特殊形式,第一個字元是其他引數的分隔符,可以是一個字串,也可以是其他引數
SELECT CONCAT_WS('-','1ST','2ND','3RD'),CONCAT_WS('*','1ST',NULL,'3RD');
1ST-2ND-3RD 1ST*3RD
LOWER(STR)或者LCASE(STR)可以將字串str中的字母字元全部轉換成小寫字母。
SELECT LOWER('BLACK'),LCASE('WELL'); black well
UPPER(STR)或者UCASE(STR)可以將字串str中的字母字元全部轉換成大寫字母。
CURDATE() 和CURRENT_DATE()函式作用相同,將當前日期按照‘YYYY-MM-DD’或‘YYYYMMDD’格式的值返回
SELECT CURDATE(),DURDATE()+0; 2018-04-11 20180411
CURTIME()和CURRENT_TIME()函式作用相同,將當前時間以‘HH:MM:SS’或HHMMSS的格式返回
SELECT CURTIME(),CURDATE()+0; 19:38:40 193840.000000
NOW() 顯示現在的日期和時間
SELECT NOW(); 2018-04-11 19:41:56
DATE_FORMAT(date,format)根據format指定的格式顯示date值
SELECT DATE_FORMAT('1997-10-04 22:23:00','%W %M %Y') AS TIME; Saturday October 1997
查詢所有資料:SELECT *FROM 表名;
查詢指定列資料:SELECT 欄位1,欄位2.. FROM 表名;
查詢指定記錄:SELECT *|欄位1,欄位2...FROM 表名 WHERE 查詢條件;
BETWEENT AND 範圍查詢 :SELECT * FROM 表名 WHERE 欄位名 BETWEEN 最小值 AND 最大值;
IN 限定範圍查詢 : SELECT *FROM 表名 WHERE 欄位 IN (指定值1,指定值2..);
LIKE 匹配: SELECT * FROM 表名 WHERE 欄位 LIKE '%(任意長度字元)|_(一個下劃線表示一個字元)' ; PS :z% 以z開頭 %z 以z結尾 %z% 包含z
查詢空值:SELECT * FROM 表名 WHERE 欄位 IS NULL ; 非空值 IS NOT NULL;
AND多條件查詢:SELECT * FROM 表名 WHERE 條件1 AND 條件2 AND 條件3...;
OR多條件:SELECT * FROM 表名 WHERE 條件1 OR 條件2 OR 條件3....;
查詢結果不重複:SELECT DISTINCT 欄位名 FROM 表名;排序: SELECT * FROM 表名 ORDER BY 欄位1,欄位2 ASC(升序)|DESC(降序);
先根據欄位1指定方向排序,再根據欄位2指定方向排序:SELECT * FROM 表名 ORDER BY 欄位1 排序方向,欄位2 排序方向;
分組查詢,合併結果: SELECT s_id,GROUP_CONCAT(欄位) AS 別名 FROM 表名 GROUP BY 欄位 HAVING 限定條件;
使用函式查詢:SELECT 欄位1,函式(欄位) AS 別名 FROM 表名 條件;inner join 內連線語法結構 : SELECT 欄位1,欄位2... FROM 表1 INNER JOIN 表2 ON 條件;自連線語法結構 : SELECT 邏輯表1.欄位1,邏輯表1.欄位2 FROM 表1 AS 邏輯表1,表1 AS 邏輯表2 WHERE 邏輯表1.欄位N = 邏輯表2.欄位N AND 邏輯表.欄位 = 值;左外連線語法結構: SELECT 表1.欄位1,欄位2,欄位3 FROM 表1 LEFT OUTER JOIN 表2 ON 條件;
右外連線語法結構:SELECT 表2.欄位,欄位1,欄位2...FROM 表1 RIGHT OUTER JOIN 表2 ON 條件;
子查詢語法結構:SELECT 欄位1,欄位2...FROM 表 WHERE 條件1 AND (子查詢ANY|ALL|EXISTS|IN)(子查詢語句);