mysql字符串、数学、日期和时间、类型转换、逻辑函数函数的说明用法
字符串函数示例:
CONCAT
- 用于连接两个或多个字符串:
SELECT CONCAT('Hello', 'World') AS ConcatenatedString;-- 输出:Hello World
SUBSTRING
- 用于获取字符串的子串:
SELECT SUBSTRING('Hello World', 1, 5) AS SubstringResult;-- 输出:Hello
UPPER / LOWER
- 用于转换字符串为大写或小写:
SELECT UPPER('hello') AS UpperCase, LOWER('WORLD') AS LowerCase;-- 输出:HELLO ,world
REPLACE
- 用于替换字符串中的子串:
SELECT REPLACE('Hello World', 'World', 'Universe') AS ReplacedString;-- 输出:Hello Universe
CHAR_LENGTH / LENGTH
- 计算字符串的长度:
SELECT CHAR_LENGTH('Hello'), LENGTH('World') AS LengthResult;-- 输出:11 ,11
数学函数示例:
ROUND, CEIL, FLOOR
- 用于舍入操作:
SELECT ROUND(3.14159), CEIL(3.14159), FLOOR(3.14159); -- 输出:3,4,3
ABS
- 返回数的绝对值:
SELECT ABS(-10) AS AbsoluteValue; -- 输出:10
RAND
- 返回随机数:
SELECT RAND() AS RandomNumber;-- 输出一个随机数
日期和时间函数示例:
NOW
- 返回当前日期和时间:
SELECT NOW() AS CurrentDateTime; -- 返回当前日期和时间
CURDATE, CURTIME
: 返回当前日期和时间中的日期部分或时间部分。
SELECT CURDATE() AS CurrentDate, CURTIME() AS CurrentTime; --返回当前日期和时间中的日期部分或时间部分
DATE_ADD, DATE_SUB
: 用于在日期上进行加减操作。
SELECT DATE_ADD('2024-11-14', INTERVAL 1 DAY) AS Tomorrow, DATE_SUB('2024-11-14', INTERVAL 1 MONTH) AS LastMonth; -- 返回明天日期和上个月
DATEDIFF, DATE_FORMAT, YEAR, MONTH, DAY
: 用于处理日期或时间数据。
SELECT DATEDIFF('2024-11-14', '2024-10-14') AS DaysDifference, DATE_FORMAT(NOW(), '%Y-%m-%d') AS FormattedDate,
YEAR('2024-11-14') AS YearValue, MONTH('2024-11-14') AS MonthValue, DAY('2024-11-14') AS DayValue; --返回天数差 格式化的日期 年 月 日
类型转换函数示例:
CAST
- 用于将一个数据类型转换为另一个数据类型:
SELECT CAST('42' AS SIGNED) AS IntegerValue; -- 将字符串转换为有符号整数
逻辑函数示例:
IF
- 用于条件判断:
SELECT IF(1 > 2, 'True', 'False') AS ConditionResult; --返回false
CASE
- 用于条件分支:
SELECT
CASE
WHEN 2 > 1 THEN '2 is greater'
ELSE '1 is greater'
END AS LargerNumber; --返回2 is greater
COALESCE
- 返回一组值中的第一个非NULL值:
SELECT COALESCE(NULL, 'Value 1', 'Value 2') AS FirstNonNullValue;--返回Value 1