一篇整理MYSQL高级函数的文章,先收藏,以便不时之需

文章仅供参考,不包含全部函数

MySQL常用的高级函数(标★号为很常用)

1.★★IF(expr,v1,v2):如果表达式 expr 成立,返回结果 v1;否则,返回结果 v2。

例:SELECT IF(1 > 0,'正确','错误') ->正确

2.★★IFNULL(v1,v2):如果 v1 的值不为 NULL,则返回 v1,否则返回 v2。

例:SELECT IFNULL(null,'Hello Word') ->Hello Word

3.★★★CASE expression WHEN condition1 THEN result1 ELSE result END

CASE 表示函数开始,END 表示函数结束。如果 condition1 成立,则返回 result1, 如果 condition2 成立,则返回 result2,当全部不成立则返回 result,而当有一个成立之后,后面的就不执行了。

CASE expression
WHEN condition1 THEN result1
WHEN condition2 THEN result2

WHEN conditionN THEN resultN
ELSE result
END

例:SELECT CASE   WHEN 1 > 0   THEN '1 > 0'   WHEN 2 > 0   THEN '2 > 0'   ELSE '3 > 0'   END ->1 > 0

4.BIN(x):返回 x 的二进制编码

15 的 2 进制编码:

例:SELECT BIN(15); -- 1111

5.BINARY(s):将字符串 s 转换为二进制字符串

例:SELECT BINARY "RUNOOB"; -> RUNOOB

6.CAST(x AS type):转换数据类型

字符串日期转换为日期:

例:SELECT CAST("2017-08-29" AS DATE); -> 2017-08-29

7.★COALESCE(expr1, expr2, …, expr_n):返回参数中的第一个非空表达式(从左向右)

例:SELECT COALESCE(NULL, NULL, NULL, 'runoob.com', NULL, 'google.com'); -> runoob.com

8.CONNECTION_ID():返回服务器的连接数

例:SELECT CONNECTION_ID(); -> 4292835

9.CONVERT(s USING cs):函数将字符串 s 的字符集变成 cs

例:SELECT CHARSET('ABC') ->utf-8
例:SELECT CHARSET(CONVERT('ABC' USING gbk)) ->gbk

10.CURRENT_USER()/SESSION_USER()/SYSTEM_USER()/USER():返回当前用户

例:SELECT CURRENT_USER(); -> guest@%
例:SELECT SESSION_USER(); -> guest@%
例:SELECT SYSTEM_USER(); -> guest@%
例:SELECT USER(); -> guest@%

11.DATABASE():返回当前数据库名

例:SELECT DATABASE(); -> runoob

12.★ISNULL(expression):判断表达式是否为 NULL

例:SELECT ISNULL(NULL); ->1

13.VERSION():返回数据库的版本号

例:SELECT VERSION() -> 5.6.34

提示一点:看似鸡肋的函数,别到用的时候不知道,看一遍最起码有个印象,知道它有这个东西,到用的时候再查怎么用。
最后,再见啦老铁~

发布了12 篇原创文章 · 获赞 22 · 访问量 2614

猜你喜欢

转载自blog.csdn.net/weixin_45240169/article/details/103710013