首页 / 站群服务器 / 正文
MySQL中的函数,功能与应用解析,mysql中的函数有哪些

Time:2025年01月05日 Read:7 评论:42 作者:y21dr45

背景介绍

MySQL中的函数,功能与应用解析,mysql中的函数有哪些

MySQL 数据库管理系统提供了丰富的内置函数,这些函数可以简化数据处理任务,提高查询效率,本文将探讨 MySQL 中的各种函数,包括流程控制函数、聚合函数、字符串函数和数值函数等,通过详细介绍和示例演示,读者能够更好地理解和应用这些函数,提升数据库操作技能。

流程控制函数

IF(condition, value_if_true, value_if_false)

功能: 根据条件condition 的真假返回不同的值,如果condition 为真,则返回value_if_true,否则返回value_if_false

使用示例:

  SELECT IF(1>2, 'True', 'False'); -- 返回 'False'

IFNULL(expression1, expression2)

功能: 如果expression1 不为空,则返回expression1,否则返回expression2

使用示例:

  SELECT IFNULL(NULL, 'Default Value'); -- 返回 'Default Value'

CASE WHEN

功能: 允许根据一系列条件进行多路分支选择,有两种格式:简单的CASE 表达式和搜索的CASE 表达式。

简单CASE 表达式:

    CASE expression WHEN value1 THEN result1 WHEN value2 THEN result2 ... ELSE result END

搜索CASE 表达式:

    CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ... ELSE result END

使用示例:

  SELECT CASE WHEN 1 > 2 THEN 'True' ELSE 'False'; -- 返回 'False'

COALESCE(value1, value2, ...)

功能: 返回参数列表中的第一个非 NULL 值。

使用示例:

  SELECT COALESCE(NULL, NULL, 'Default Value', NULL); -- 返回 'Default Value'

NULLIF(expression1, expression2)

功能: 如果expression1 等于expression2,则返回 NULL,否则返回expression1

使用示例:

  SELECT NULLIF(1, 1); -- 返回 NULL

GREATEST(value1, value2, ...)

功能: 返回参数列表中的最大值。

使用示例:

  SELECT GREATEST(3, 12, 34, 8, 25); -- 返回 34

LEAST(value1, value2, ...)

功能: 返回参数列表中的最小值。

使用示例:

  SELECT LEAST(3, 12, 34, 8, 25); -- 返回 3

聚合函数

STD, VARIANCE

功能: 计算标准差和方差。

使用示例:

  SELECT STDDEV(column_name) FROM table_name;
  SELECT VAR_SAMP(column_name) FROM table_name;

BIT_AND, BIT_OR, BIT_XOR

功能: 对位进行与、或、异或操作。

使用示例:

  SELECT BIT_AND(~9, ~5); -- 返回二进制按位与的结果

COUNT(ALL | DISTINCT expression)

功能: 计算表中行的数目或特定列中非 NULL 值的数目。

使用示例:

  SELECT COUNT(*) FROM table_name;

SUM(ALL | DISTINCT expression)

功能: 计算某列的总和。

使用示例:

  SELECT SUM(column_name) FROM table_name;

AVG(ALL | DISTINCT expression)

功能: 计算某列的平均值。

使用示例:

  SELECT AVG(column_name) FROM table_name;

MIN(ALL | DISTINCT expression)

功能: 找出某列中的最小值。

使用示例:

  SELECT MIN(column_name) FROM table_name;

MAX(ALL | DISTINCT expression)

功能: 找出某列中的最大值。

使用示例:

  SELECT MAX(column_name) FROM table_name;

GROUP_CONCAT(DISTINCT expr [ORDER BY {unsigned_integer | col_name | expr} [ASC | DESC] [SEPARATOR str_val])

功能: 将多个行的值连接成一个字符串,这是 MySQL 特有的聚合函数,不是所有数据库系统都支持。

使用示例:

  SELECT GROUP_CONCAT(column_name SEPARATOR ', ') FROM table_name;

字符串函数

CONCAT(str1, str2, ...)

功能: 连接两个或多个字符串。

使用示例:

  SELECT CONCAT('Hello', ' ', 'World'); -- 返回 'Hello World'

FORMAT(X, D)

功能: 格式化数字 X 到 D 有效数字,并四舍五入。

使用示例:

  SELECT FORMAT(1234.5678, '#,###.00'); -- 返回 '1,235'

LENGTH(str)

功能: 返回字符串的长度。

使用示例:

  SELECT LENGTH('Hello World'); -- 返回 11

LOCATE(substr, str) / POSITION(substr IN str)

功能: 返回子字符串在字符串中的位置(从左边开始)。

使用示例:

  SELECT POSITION('b' IN 'abc'); -- 返回 2

LTRIM(str) / RTRIM(str) / TRIM(str)

功能: LTRIM() 删除字符串左侧空格,RTRIM() 删除右侧空格,TRIM() 删除两侧空格。

使用示例:

  SELECT LTRIM('   Hello World   '); -- 返回 'Hello World   '

REPLACE(str, from_str, to_str)

功能: 用to_str 替换from_str

使用示例:

  SELECT REPLACE('Hello World', 'World', 'MySQL'); -- 返回 'Hello MySQL'

REVERSE(str)

功能: 反转字符串。

使用示例:

  SELECT REVERSE('Hello'); -- 返回 'olleH'

SOUNDEX(str) / SOUNDS LIKE %pattern%

功能: SOUNDEX()返回一个字符串的 Soundex,SOUNDS LIKE用于比较两个字符串是否听起来相似。

使用示例:

  SELECT SOUNDEX('hello') = SOUNDEX('h3llo'); -- 返回 1 (true)

SPACE(N) / REPEAT(str, n)

功能: SPACE()返回包含 N 个空格的字符串,REPEAT()重复字符串 N 次。

使用示例:

  SELECT SPACE(5); -- 返回 '     ' (5个空格)
  -- REPEAT('MySQL ', 3); -- 返回 'MySQL   MySQL   MySQL   ' (重复3次)

标签: mysql中的函数 
排行榜
关于我们
「好主机」服务器测评网专注于为用户提供专业、真实的服务器评测与高性价比推荐。我们通过硬核性能测试、稳定性追踪及用户真实评价,帮助企业和个人用户快速找到最适合的服务器解决方案。无论是云服务器、物理服务器还是企业级服务器,好主机都是您值得信赖的选购指南!
快捷菜单1
服务器测评
VPS测评
VPS测评
服务器资讯
服务器资讯
扫码关注
鲁ICP备2022041413号-1