MySQL 是一種廣泛使用的關系型數據庫管理系統,它提供了豐富的內置函數來處理和操作數據。這些函數可以幫助我們更高效地完成各種數據庫操作,如數據查詢、數據處理、數據轉換等。本文將通過一些實例來分析 MySQL 中常用函數的使用方法。
CONCAT()
函數CONCAT()
函數用于將多個字符串連接在一起。
實例:
SELECT CONCAT('Hello', ' ', 'World') AS result;
輸出:
+-------------+
| result |
+-------------+
| Hello World |
+-------------+
SUBSTRING()
函數SUBSTRING()
函數用于從字符串中提取子字符串。
實例:
SELECT SUBSTRING('Hello World', 7, 5) AS result;
輸出:
+--------+
| result |
+--------+
| World |
+--------+
LENGTH()
函數LENGTH()
函數用于返回字符串的長度。
實例:
SELECT LENGTH('Hello World') AS result;
輸出:
+--------+
| result |
+--------+
| 11 |
+--------+
ROUND()
函數ROUND()
函數用于對數值進行四舍五入。
實例:
SELECT ROUND(123.4567, 2) AS result;
輸出:
+--------+
| result |
+--------+
| 123.46 |
+--------+
ABS()
函數ABS()
函數用于返回數值的絕對值。
實例:
SELECT ABS(-123.45) AS result;
輸出:
+--------+
| result |
+--------+
| 123.45 |
+--------+
CEIL()
和 FLOOR()
函數CEIL()
函數用于向上取整,FLOOR()
函數用于向下取整。
實例:
SELECT CEIL(123.45) AS ceil_result, FLOOR(123.45) AS floor_result;
輸出:
+------------+-------------+
| ceil_result| floor_result|
+------------+-------------+
| 124 | 123 |
+------------+-------------+
NOW()
函數NOW()
函數用于返回當前的日期和時間。
實例:
SELECT NOW() AS current_datetime;
輸出:
+---------------------+
| current_datetime |
+---------------------+
| 2023-10-05 12:34:56 |
+---------------------+
DATE()
函數DATE()
函數用于從日期時間值中提取日期部分。
實例:
SELECT DATE(NOW()) AS current_date;
輸出:
+-------------+
| current_date|
+-------------+
| 2023-10-05 |
+-------------+
DATEDIFF()
函數DATEDIFF()
函數用于計算兩個日期之間的天數差。
實例:
SELECT DATEDIFF('2023-10-10', '2023-10-05') AS days_diff;
輸出:
+-----------+
| days_diff |
+-----------+
| 5 |
+-----------+
COUNT()
函數COUNT()
函數用于計算行數。
實例:
SELECT COUNT(*) AS total_rows FROM employees;
輸出:
+------------+
| total_rows |
+------------+
| 100 |
+------------+
SUM()
函數SUM()
函數用于計算數值列的總和。
實例:
SELECT SUM(salary) AS total_salary FROM employees;
輸出:
+--------------+
| total_salary |
+--------------+
| 5000000 |
+--------------+
AVG()
函數AVG()
函數用于計算數值列的平均值。
實例:
SELECT AVG(salary) AS average_salary FROM employees;
輸出:
+---------------+
| average_salary|
+---------------+
| 50000 |
+---------------+
IF()
函數IF()
函數用于根據條件返回不同的值。
實例:
SELECT IF(salary > 50000, 'High', 'Low') AS salary_level FROM employees;
輸出:
+--------------+
| salary_level |
+--------------+
| High |
| Low |
| High |
+--------------+
CASE
語句CASE
語句用于實現多條件判斷。
實例:
SELECT
CASE
WHEN salary > 70000 THEN 'High'
WHEN salary BETWEEN 50000 AND 70000 THEN 'Medium'
ELSE 'Low'
END AS salary_level
FROM employees;
輸出:
+--------------+
| salary_level |
+--------------+
| High |
| Medium |
| Low |
+--------------+
COALESCE()
函數COALESCE()
函數用于返回參數列表中的第一個非空值。
實例:
SELECT COALESCE(NULL, 'Default Value') AS result;
輸出:
+----------------+
| result |
+----------------+
| Default Value |
+----------------+
NULLIF()
函數NULLIF()
函數用于比較兩個表達式,如果相等則返回 NULL
,否則返回第一個表達式。
實例:
SELECT NULLIF(10, 10) AS result;
輸出:
+--------+
| result |
+--------+
| NULL |
+--------+
MySQL 提供了豐富的內置函數,可以幫助我們更高效地處理數據。通過本文的實例分析,我們了解了字符串函數、數值函數、日期和時間函數、聚合函數、條件函數以及其他常用函數的使用方法。掌握這些函數的使用,可以大大提高我們在數據庫操作中的效率和靈活性。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。