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中的字母字符全部轉換成大寫字母。

SELECT UPPER('black'),UCASE('Well');  BLACK WELL

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)(子查詢語句);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章