MySQL中常见的函数和具体使用实例说明汇总

MySQL中常见的函数和具体使用实例说明汇总

下面是MySQL中常见的函数以及使用示例的汇总:

1. ABS():
返回一个数的绝对值。
   示例:SELECT ABS(-5); -- 输出结果为 5

2. CONCAT():
将两个或多个字符串连接起来。
   示例:SELECT CONCAT('Hello', ' ', 'World'); -- 输出结果为 "Hello World"

3. COUNT():
返回一个表中行的数量。
   示例:SELECT COUNT(*) FROM users; -- 返回 users 表中的行数

4. DATE_FORMAT():
将日期时间格式化为指定的格式。
   示例:SELECT DATE_FORMAT('2021-01-01', '%Y-%m-%d'); -- 输出结果为 "2021-01-01"

5. DAY():
返回一个日期的天份。
   示例:SELECT DAY('2021-01-01'); -- 输出结果为 1

6. IFNULL():
如果第一个参数不为NULL,则返回第一个参数,否则返回第二个参数。
   示例:SELECT IFNULL(NULL, 'Hello'); -- 输出结果为 "Hello"

7. LENGTH():
返回一个字符串的长度。
   示例:SELECT LENGTH('Hello'); -- 输出结果为 5

8. MAX():
返回一列中的最大值。
   示例:SELECT MAX(salary) FROM employees; -- 返回 employees 表中的最大薪水

9. MIN():
返回一列中的最小值。
   示例:SELECT MIN(salary) FROM employees; -- 返回 employees 表中的最小薪水

10. ROUND():
返回一个数四舍五入到指定的小数位数。
    示例:SELECT ROUND(3.14159, 2); -- 输出结果为 3.14

11. SUBSTRING():
提取字符串的一部分。
    示例:SELECT SUBSTRING('Hello World', 7); -- 输出结果为 "World"

12. UPPER():
将字符串转换为大写。
    示例:SELECT UPPER('hello'); -- 输出结果为 "HELLO"

13. LOWER():
将字符串转换为小写。
    示例:SELECT LOWER('WORLD'); -- 输出结果为 "world"

14. TRIM():
去除字符串两端的空格。
    示例:SELECT TRIM(' Hello '); -- 输出结果为 "Hello"

15. YEAR():
返回一个日期的年份。
    示例:SELECT YEAR('2021-01-01'); -- 输出结果为 2021

16. MONTH():
返回一个日期的月份。
    示例:SELECT MONTH('2021-01-01'); -- 输出结果为 1

17. DAYOFWEEK():
返回一个日期的星期几。
    示例:SELECT DAYOFWEEK('2021-01-01'); -- 输出结果为 6 (星期五)

18. CURDATE():
返回当前日期。
    示例:SELECT CURDATE(); -- 输出结果为当前日期

19. CURTIME():
返回当前时间。
    示例:SELECT CURTIME(); -- 输出结果为当前时间

20. CONCAT_WS():
将两个或多个字符串连接起来,并用指定的分隔符分隔。
    示例:SELECT CONCAT_WS('-', '2021', '01', '01'); -- 输出结果为 "2021-01-01"

21. GROUP_CONCAT():
将一个列中的多个值连接成一个字符串,并用指定的分隔符分隔。
    示例:SELECT GROUP_CONCAT(name SEPARATOR ', ') FROM users; -- 输出结果为 "John, Jane, Tom"

22. SUM():
计算一列中所有值的总和。
    示例:SELECT SUM(salary) FROM employees; -- 返回 employees 表中薪水总和

23. AVG():
计算一列中所有值的平均值。
    示例:SELECT AVG(salary) FROM employees; -- 返回 employees 表中薪水平均值

24. LOWER():
将字符串转换为小写。
    示例:SELECT LOWER('HELLO'); -- 输出结果为 "hello"

25. UPPER():
将字符串转换为大写。
    示例:SELECT UPPER('world'); -- 输出结果为 "WORLD"

26. IF():
根据条件返回不同的结果。
    示例:SELECT IF(score >= 60, '及格', '不及格') FROM exams; -- 返回 exams 表中成绩是否及格

27. STR_TO_DATE():
将字符串转换为日期。
    示例:SELECT STR_TO_DATE('2021-01-01', '%Y-%m-%d'); -- 输出结果为日期类型的值

28. NOW():
返回当前日期和时间。
    示例:SELECT NOW(); -- 输出结果为当前日期和时间

29. RAND():
返回一个0到1之间的随机数。
    示例:SELECT RAND(); -- 输出结果为随机数

30. YEAR():
返回一个日期的年份。
    示例:SELECT YEAR('2021-01-01'); -- 输出结果为 2021

31. MONTH():
返回一个日期的月份。
    示例:SELECT MONTH('2021-01-01'); -- 输出结果为 1

32. DAY():
返回一个日期的天份。
    示例:SELECT DAY('2021-01-01'); -- 输出结果为 1

33. DATEDIFF():
计算两个日期之间的天数差。
    示例:SELECT DATEDIFF('2022-01-01', '2021-01-01'); -- 输出结果为 365

34. COALESCE():
返回第一个非NULL的参数。
    示例:SELECT COALESCE(NULL, 1, 2, 3); -- 输出结果为 1

35. IFNULL():
如果第一个参数不为NULL,则返回第一个参数,否则返回第二个参数。
    示例:SELECT IFNULL(NULL, 'Hello'); -- 输出结果为 "Hello"

36. CASE():
根据条件返回不同的结果。
    示例:SELECT CASE WHEN score >= 60 THEN '及格' ELSE '不及格' END FROM exams; -- 返回 exams 表中成绩是否及格

37. CHAR_LENGTH():
返回一个字符串的字符长度。
    示例:SELECT CHAR_LENGTH('Hello'); -- 输出结果为 5

38. REPLACE():
替换字符串中的指定子串。
    示例:SELECT REPLACE('Hello World', 'World', 'OpenAI'); -- 输出结果为 "Hello OpenAI"

39. CONCAT_WS():
将多个字符串连接起来,并用指定的分隔符分隔。
    示例:SELECT CONCAT_WS('-', '2021', '01', '01'); -- 输出结果为 "2021-01-01"

40. TRIM():
去除字符串两端的空格。
    示例:SELECT TRIM(' Hello '); -- 输出结果为 "Hello"

41. LTRIM():
去除字符串左端的空格。
    示例:SELECT LTRIM(' Hello'); -- 输出结果为 "Hello"

42. RTRIM():
去除字符串右端的空格。
    示例:SELECT RTRIM('Hello '); -- 输出结果为 "Hello"

43. LPAD():
在字符串左侧填充指定字符。
    示例:SELECT LPAD('5', 3, '0'); -- 输出结果为 "005"

44. RPAD():
在字符串右侧填充指定字符。
    示例:SELECT RPAD('5', 3, '0'); -- 输出结果为 "500"

45. FIND_IN_SET():
在逗号分隔的字符串中查找指定值的位置。
    示例:SELECT FIND_IN_SET('apple', 'apple,banana,orange'); -- 输出结果为 1

46. SUBSTRING_INDEX():
提取字符串指定分隔符之前或之后的部分。
    示例:SELECT SUBSTRING_INDEX('www.example.com', '.', 1); -- 输出结果为 "www"

47. INSTR():
返回一个子串在字符串中的位置。
    示例:SELECT INSTR('Hello World', 'World'); -- 输出结果为 7

48. LEFT():
返回字符串左侧指定长度的部分。
    示例:SELECT LEFT('Hello', 3); -- 输出结果为 "Hel"

49. RIGHT():
返回字符串右侧指定长度的部分。
    示例:SELECT RIGHT('Hello', 3); -- 输出结果为 "llo"

50. MID():
返回字符串指定位置和长度的部分。
    示例:SELECT MID('Hello World', 7, 5); -- 输出结果为 "World"

51. LOG():
计算一个数的自然对数。
    示例:SELECT LOG(10); -- 输出结果为 2.302585092994046

52. EXP():
计算以e为底的指数幂。
    示例:SELECT EXP(2); -- 输出结果为 7.38905609893065

53. CEILING():
向上取整。
    示例:SELECT CEILING(2.4); -- 输出结果为 3

54. FLOOR():
向下取整。
    示例:SELECT FLOOR(2.9); -- 输出结果为 2

55. SIN():
计算正弦值。
    示例:SELECT SIN(0); -- 输出结果为 0

56. COS():
计算余弦值。
    示例:SELECT COS(0); -- 输出结果为 1

57. TAN():
计算正切值。
    示例:SELECT TAN(0); -- 输出结果为 0

58. ASIN():
计算反正弦值。
    示例:SELECT ASIN(0); -- 输出结果为 0

59. ACOS():
计算反余弦值。
    示例:SELECT ACOS(1); -- 输出结果为 0

60. ATAN():
计算反正切值。
    示例:SELECT ATAN(1); -- 输出结果为 0.7853981633974483

61. PI():
返回圆周率π的值。
    示例:SELECT PI(); -- 输出结果为 3.141592653589793

62. SQRT():
计算一个数的平方根。
    示例:SELECT SQRT(16); -- 输出结果为 4

63. POWER():
计算一个数的指定次幂。
    示例:SELECT POWER(2, 3); -- 输出结果为 8

64. ROUND():
返回一个数四舍五入到指定的小数位数。
    示例:SELECT ROUND(3.14159, 2); -- 输出结果为 3.14

65. TRUNCATE():
将一个数截断到指定的小数位数。
    示例:SELECT TRUNCATE(3.14159, 2); -- 输出结果为 3.14

66. DATE_ADD():
在日期上增加指定的时间间隔。
    示例:SELECT DATE_ADD('2021-01-01', INTERVAL 1 DAY); -- 输出结果为 '2021-01-02'

67. DATE_SUB():
在日期上减去指定的时间间隔。
    示例:SELECT DATE_SUB('2021-01-01', INTERVAL 1 DAY); -- 输出结果为 '2020-12-31'

68. STR_TO_DATE():
将字符串转换为日期。
    示例:SELECT STR_TO_DATE('2021-01-01', '%Y-%m-%d'); -- 输出结果为日期类型的值

69. DATE_FORMAT():
将日期格式化为指定的格式。
    示例:SELECT DATE_FORMAT('2021-01-01', '%Y-%m-%d'); -- 输出结果为 '2021-01-01'

70. TIME_FORMAT():
将时间格式化为指定的格式。
    示例:SELECT TIME_FORMAT('12:30:45', '%H:%i:%s'); -- 输出结果为 '12:30:45'

71. NOW():
返回当前日期和时间。
    示例:SELECT NOW(); -- 输出结果为当前日期和时间

72. UNIX_TIMESTAMP():
返回当前日期和时间的UNIX时间戳。
    示例:SELECT UNIX_TIMESTAMP(); -- 输出结果为当前时间的UNIX时间戳

73. FROM_UNIXTIME():
将UNIX时间戳转换为日期和时间。
    示例:SELECT FROM_UNIXTIME(1609459200); -- 输出结果为 '2021-01-01 00:00:00'

74. INTERVAL():
用于日期和时间的间隔计算。
    示例:SELECT INTERVAL 1 DAY + '2021-01-01'; -- 输出结果为 '2021-01-02'

75. GREATEST():
返回一组值中的最大值。
    示例:SELECT GREATEST(1, 2, 3); -- 输出结果为 3

76. LEAST():
返回一组值中的最小值。
    示例:SELECT LEAST(1, 2, 3); -- 输出结果为 1

77. IF():
根据条件返回不同的结果。
    示例:SELECT IF(score >= 60, '及格', '不及格') FROM exams; -- 返回 exams 表中成绩是否及格

78. CASE WHEN():
根据条件返回不同的结果。
    示例:SELECT CASE WHEN score >= 60 THEN '及格' ELSE '不及格' END FROM exams; -- 返回 exams 表中成绩是否及格

79. COALESCE():
返回第一个非NULL的参数。
    示例:SELECT COALESCE(NULL, 1, 2, 3); -- 输出结果为 1

80. NULLIF():
如果两个表达式的值相等,则返回NULL,否则返回第一个表达式的值。
    示例:SELECT NULLIF(10, 10); -- 输出结果为 NULL

81. CONCAT():
将多个字符串拼接在一起。
    示例:SELECT CONCAT('Hello', ' ', 'World'); -- 输出结果为 'Hello World'

82. SUBSTRING():
返回字符串的子串。
    示例:SELECT SUBSTRING('Hello World', 7); -- 输出结果为 'World'

83. REPLACE():
将字符串中的指定字符替换为新的字符。
    示例:SELECT REPLACE('Hello World', 'World', 'Universe'); -- 输出结果为 'Hello Universe'

84. CHAR_LENGTH():
返回字符串的字符长度。
    示例:SELECT CHAR_LENGTH('Hello World'); -- 输出结果为 11

85. UPPER():
将字符串转换为大写。
    示例:SELECT UPPER('hello'); -- 输出结果为 'HELLO'

86. LOWER():
将字符串转换为小写。
    示例:SELECT LOWER('WORLD'); -- 输出结果为 'world'

87. TRIM():
去除字符串两端的空格。
    示例:SELECT TRIM('  Hello World  '); -- 输出结果为 'Hello World'

88. LEFT():
返回字符串的左边指定长度的子串。
    示例:SELECT LEFT('Hello World', 5); -- 输出结果为 'Hello'

89. RIGHT():
返回字符串的右边指定长度的子串。
    示例:SELECT RIGHT('Hello World', 5); -- 输出结果为 'World'

90. RTRIM():
去除字符串右边的空格。
    示例:SELECT RTRIM('Hello World  '); -- 输出结果为 'Hello World'

91. LTRIM():
去除字符串左边的空格。
    示例:SELECT LTRIM('  Hello World'); -- 输出结果为 'Hello World'

92. LENGTH():
返回字符串的字节长度。
    示例:SELECT LENGTH('Hello World'); -- 输出结果为 11

93. INSTR():
返回一个字符串在另一个字符串中第一次出现的位置。
    示例:SELECT INSTR('Hello World', 'World'); -- 输出结果为 7

94. RAND():
生成一个0到1之间的随机数。
    示例:SELECT RAND(); -- 输出结果为随机的小数

95. ABS():
返回一个数的绝对值。
    示例:SELECT ABS(-10); -- 输出结果为 10

96. ROUND():
返回一个数的四舍五入值。
    示例:SELECT ROUND(3.14159); -- 输出结果为 3

97. MOD():
返回两个数相除的余数。
    示例:SELECT MOD(10, 3); -- 输出结果为 1

98. CONCAT_WS():
将多个字符串按指定的分隔符拼接在一起。
    示例:SELECT CONCAT_WS(',', 'apple', 'banana', 'orange'); -- 输出结果为 'apple,banana,orange'

99. FIELD():
返回一个值在一组值中的位置。
    示例:SELECT FIELD('banana', 'apple', 'banana', 'orange'); -- 输出结果为 2

100. CONNECTION_ID():
返回当前数据库连接的ID。
    示例:SELECT CONNECTION_ID(); -- 输出结果为当前数据库连接的ID

101. GROUP_CONCAT():
将多行数据按指定的分隔符合并成一个字符串。
    示例:SELECT GROUP_CONCAT(name SEPARATOR ', ') FROM users; -- 将users表中的name字段按逗号分隔合并成一个字符串

102. IF():
根据条件判断返回不同的值。
    示例:SELECT IF(score >= 60, '及格', '不及格') FROM students; -- 根据学生的分数判断是否及格

103. CASE():
实现条件判断和分支选择。
    示例:SELECT CASE WHEN score >= 90 THEN '优秀'
                    WHEN score >= 80 THEN '良好'
                    WHEN score >= 60 THEN '及格'
                    ELSE '不及格' END
           FROM students; -- 根据学生的分数返回对应的评级

104. DATE_FORMAT():
将日期格式化为指定的字符串形式。
    示例:SELECT DATE_FORMAT(birthday, '%Y-%m-%d') FROM users; -- 将用户的生日按年月日格式化

105. NOW():
返回当前的日期和时间。
    示例:SELECT NOW(); -- 返回当前的日期和时间

106. CURDATE():
返回当前的日期。
    示例:SELECT CURDATE(); -- 返回当前的日期

107. CURTIME():
返回当前的时间。
    示例:SELECT CURTIME(); -- 返回当前的时间

108. DATE_ADD():
对日期进行加法运算。
    示例:SELECT DATE_ADD(birthday, INTERVAL 1 YEAR) FROM users; -- 将用户的生日加上1年

109. DATE_SUB():
对日期进行减法运算。
    示例:SELECT DATE_SUB(birthday, INTERVAL 1 YEAR) FROM users; -- 将用户的生日减去1年

110. DATEDIFF():
计算两个日期之间的天数差。
    示例:SELECT DATEDIFF('2022-01-01', '2021-01-01'); -- 计算2021年1月1日和2022年1月1日之间的天数差

111. STR_TO_DATE():
将字符串解析为日期。
    示例:SELECT STR_TO_DATE('2022-01-01', '%Y-%m-%d'); -- 将字符串解析为日期形式

112. YEAR():
返回日期的年份部分。
    示例:SELECT YEAR('2022-01-01'); -- 返回日期的年份部分

113. MONTH():
返回日期的月份部分。
    示例:SELECT MONTH('2022-01-01'); -- 返回日期的月份部分

114. DAY():
返回日期的天份部分。
    示例:SELECT DAY('2022-01-01'); -- 返回日期的天份部分

115. HOUR():
返回时间的小时部分。
    示例:SELECT HOUR('12:34:56'); -- 返回时间的小时部分

116. MINUTE():
返回时间的分钟部分。
    示例:SELECT MINUTE('12:34:56'); -- 返回时间的分钟部分

117. SECOND():
返回时间的秒数部分。
    示例:SELECT SECOND('12:34:56'); -- 返回时间的秒数部分

118. WEEKDAY():
返回日期的星期几。
    示例:SELECT WEEKDAY('2022-01-01'); -- 返回日期对应的星期几,0表示星期一,6表示星期天

119. COUNT():
计算某列的非NULL值的数量。
    示例:SELECT COUNT(*) FROM users; -- 计算users表中记录的数量

  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

《代码爱好者》

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值