Mysql常用函数大全

一、数学函数

  • ABS(x) 返回x的绝对值
  • BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进制)
  • CEILING(x) 返回大于x的最小整数值
  • EXP(x) 返回值e(自然对数的底)的x次方
  • FLOOR(x) 返回小于x的最大整数值
  • GREATEST(x1,x2,...,xn)返回集合中最大的值
  • LEAST(x1,x2,...,xn) 返回集合中最小的值
  • LN(x) 返回x的自然对数
  • LOG(x,y)返回x的以y为底的对数
  • MOD(x,y) 返回x/y的模(余数)
  • PI()返回pi的值(圆周率)
  • RAND()返回0到1内的随机值,可以通过提供一个参数(种子)使RAND()随机数生成器生成一个指定的值。
  • ROUND(x,y)返回参数x的四舍五入的有y位小数的值
  • SIGN(x) 返回代表数字x的符号的值
  • SQRT(x) 返回一个数的平方根
  • TRUNCATE(x,y) 返回数字x截短为y位小数的结果

二、聚合函数(常用于GROUP BY从句的SELECT查询中)

  • AVG(col)返回指定列的平均值
  • COUNT(col)返回指定列中非NULL值的个数
  • MIN(col)返回指定列的最小值
  • MAX(col)返回指定列的最大值
  • SUM(col)返回指定列的所有值之和
  • GROUP_CONCAT(col) 返回由属于一组的列值连接组合而成的结果

三、字符串函数

  • ASCII(char)返回字符的ASCII码值
  • BIT_LENGTH(str)返回字符串的比特长度
  • CONCAT(s1,s2...,sn)将s1,s2...,sn连接成字符串
  • CONCAT_WS(sep,s1,s2...,sn)将s1,s2...,sn连接成字符串,并用sep字符间隔
  • INSERT(str,x,y,instr) 将字符串str从第x位置开始,y个字符长的子串替换为字符串instr,返回结果
  • FIND_IN_SET(str,list)分析逗号分隔的list列表,如果发现str,返回str在list中的位置
  • LCASE(str)或LOWER(str) 返回将字符串str中所有字符改变为小写后的结果
  • LEFT(str,x)返回字符串str中最左边的x个字符
  • LENGTH(s)返回字符串str中的字符数
  • LTRIM(str) 从字符串str中切掉开头的空格
  • POSITION(substr,str) 返回子串substr在字符串str中第一次出现的位置
  • QUOTE(str) 用反斜杠转义str中的单引号
  • REPEAT(str,srchstr,rplcstr)返回字符串str重复x次的结果
  • REVERSE(str) 返回颠倒字符串str的结果
  • RIGHT(str,x) 返回字符串str中最右边的x个字符
  • RTRIM(str) 返回字符串str尾部的空格
  • STRCMP(s1,s2)比较字符串s1和s2
  • TRIM(str)去除字符串首部和尾部的所有空格
  • UCASE(str)UPPER(str) 返回将字符串str中所有字符转变为大写后的结果

四、日期和时间函数

  • CURDATE()CURRENT_DATE() 返回当前的日期
  • CURTIME()CURRENT_TIME() 返回当前的时间
  • DATE_ADD(date,INTERVAL int keyword)返回日期date加上间隔时间int的结果(int必须按照关键字进行格式化),如:SELECTDATE_ADD(CURRENT_DATE,INTERVAL 6 MONTH);
  • DATE_FORMAT(date,fmt) 依照指定的fmt格式格式化日期date值
  • DATE_SUB(date,INTERVAL int keyword)返回日期date加上间隔时间int的结果(int必须按照关键字进行格式化),如:SELECTDATE_SUB(CURRENT_DATE,INTERVAL 6 MONTH);
  • DAYOFWEEK(date) 返回date所代表的一星期中的第几天(1~7)
  • DAYOFMONTH(date) 返回date是一个月的第几天(1~31)
  • DAYOFYEAR(date) 返回date是一年的第几天(1~366)
  • DAYNAME(date) 返回date的星期名,如:SELECT DAYNAME(CURRENT_DATE);
  • FROM_UNIXTIME(ts,fmt) 根据指定的fmt格式,格式化UNIX时间戳ts
  • HOUR(time) 返回time的小时值(0~23)
  • MINUTE(time) 返回time的分钟值(0~59)
  • MONTH(date) 返回date的月份值(1~12)
  • MONTHNAME(date) 返回date的月份名,如:SELECT MONTHNAME(CURRENT_DATE);
  • NOW() 返回当前的日期和时间
  • QUARTER(date) 返回date在一年中的季度(1~4),如SELECT QUARTER(CURRENT_DATE);
  • WEEK(date) 返回日期date为一年中第几周(0~53)
  • YEAR(date) 返回日期date的年份(1000~9999)

从日期 d 中获取指定的值,type 指定返回的值。 type可取值为:

  • MICROSECOND
  • SECOND
  • MINUTE
  • HOUR
  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR
  • SECOND_MICROSECOND
  • MINUTE_MICROSECOND
  • MINUTE_SECOND
  • HOUR_MICROSECOND
  • HOUR_SECOND
  • HOUR_MINUTE
  • DAY_MICROSECOND
  • DAY_SECOND
  • DAY_MINUTE
  • DAY_HOUR
  • YEAR_MONTH

一些示例:

获取当前系统时间:

1
2
3
4
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP());
SELECT EXTRACT(YEAR_MONTH FROM CURRENT_DATE);
SELECT EXTRACT(DAY_SECOND FROM CURRENT_DATE);
SELECT EXTRACT(HOUR_MINUTE FROM CURRENT_DATE);

返回两个日期值之间的差值(月数):

1
SELECT PERIOD_DIFF(200302,199802);

在Mysql中计算年龄:

1
SELECT DATE_FORMAT(FROM_DAYS(TO_DAYS(NOW())-TO_DAYS(birthday)),'%Y')+0 AS age FROM employee;

这样,如果Brithday是未来的年月日的话,计算结果为0。

下面的SQL语句计算员工的绝对年龄,即当Birthday是未来的日期时,将得到负值。

1
SELECT DATE_FORMAT(NOW(),'%Y') - DATE_FORMAT(birthday,'%Y') - (DATE_FORMAT(NOW(),'00-%m-%d') < DATE_FORMAT(birthday,'00-%m-%d'))  AS age from employee;

五、加密函数

  • AES_ENCRYPT(str,key) 返回用密钥key对字符串str利用高级加密标准算法加密后的结果,调用AES_ENCRYPT的结果是一个二进制字符串,以BLOB类型存储
  • AES_DECRYPT(str,key) 返回用密钥key对字符串str利用高级加密标准算法解密后的结果
  • DECODE(str,key) 使用key作为密钥解密加密字符串str
  • ENCRYPT(str,salt) 使用UNIXcrypt()函数,用关键词salt(一个可以惟一确定口令的字符串,就像钥匙一样)加密字符串str
  • ENCODE(str,key) 使用key作为密钥加密字符串str,调用ENCODE()的结果是一个二进制字符串,它以BLOB类型存储
  • MD5() 计算字符串str的MD5校验和
  • PASSWORD(str) 返回字符串str的加密版本,这个加密过程是不可逆转的,和UNIX密码加密过程使用不同的算法。
  • SHA() 计算字符串str的安全散列算法(SHA)校验和

示例:

1
2
3
4
5
6
7
SELECT ENCRYPT('root','salt');SELECT ENCODE('xufeng','key');
SELECT DECODE(ENCODE('xufeng','key'),'key');
-- 加解密放在一起
SELECT AES_ENCRYPT('root','key');
SELECT AES_DECRYPT(AES_ENCRYPT('root','key'),'key');
SELECT MD5('123456');
SELECT SHA('123456');

六、控制流函数

MySQL有4个函数是用来进行条件操作的,这些函数可以实现SQL的条件逻辑,允许开发者将一些应用程序业务逻辑转换到数据库后台。

MySQL控制流函数:

  • CASE WHEN[test1] THEN [result1]...ELSE [default] END如果testN是真,则返回resultN,否则返回default
  • CASE [test] WHEN[val1] THEN [result]...ELSE [default]END 如果test和valN相等,则返回resultN,否则返回default
  • IF(test,t,f) 如果test是真,返回t;否则返回f
  • IFNULL(arg1,arg2) 如果arg1不是空,返回arg1,否则返回arg2
  • NULLIF(arg1,arg2) 如果arg1=arg2返回NULL;否则返回arg1

这些函数的第一个是IFNULL(),它有两个参数,并且对第一个参数进行判断。如果第一个参数不是NULL,函数就会向调用者返回第一个参数;如果是NULL,将返回第二个参数。

如:SELECT IFNULL(1,2), IFNULL(NULL,10),IFNULL(4*NULL,'false');

NULLIF()函数将会检验提供的两个参数是否相等,如果相等,则返回NULL,如果不相等,就返回第一个参数。

如:SELECT NULLIF(1,1),NULLIF('A','B'),NULLIF(2+3,4+1);

和许多脚本语言提供的IF()函数一样,MySQL的IF()函数也可以建立一个简单的条件测试,这个函数有三个参数,第一个是要被判断的表达式,如果表达式为真,IF()将会返回第二个参数,如果为假,IF()将会返回第三个参数。

如:SELECTIF(1<10,2,3),IF(56>100,'true','false');

IF()函数在只有两种可能结果时才适合使用。然而,在现实世界中,我们可能发现在条件测试中会需要多个分支。在这种情况下,MySQL提供了CASE函数,它和PHP及Perl语言的switch-case条件例程一样。

CASE函数的格式有些复杂,通常如下所示:

1
2
3
4
5
6
7
CASE [expression to be evaluated] 
WHEN [val 1] THEN [result 1]
WHEN [val 2] THEN [result 2]
WHEN [val 3] THEN [result 3]
......
WHEN [val n] THEN [result n]
ELSE [default result] END

这里,第一个参数是要被判断的值或表达式,接下来的是一系列的WHEN-THEN块,每一块的第一个参数指定要比较的值,如果为真,就返回结果。所有的WHEN-THEN块将以ELSE块结束,当END结束了所有外部的CASE块时,如果前面的每一个块都不匹配就会返回ELSE块指定的默认结果。如果没有指定ELSE块,而且所有的WHEN-THEN比较都不是真,MySQL将会返回NULL。

CASE函数还有另外一种句法,有时使用起来非常方便,如下:

1
2
3
CASE WHEN [conditional test 1] THEN [result 1] 
WHEN [conditional test 2] THEN [result 2]
ELSE [default result] END

这种条件下,返回的结果取决于相应的条件测试是否为真。

示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
mysql>SELECT CASE 'green' WHEN 'red' THEN 'stop' 
WHEN 'green' THEN 'go' END;
SELECT CASE 9 WHEN 1 THEN 'a'
WHEN 2 THEN 'b' ELSE 'N/A' END;
SELECT CASE WHEN (2+2)=4 THEN 'OK'
WHEN (2+2)<>4 THEN 'not OK' END ASSTATUS;
SELECT Name,IF((IsActive = 1),'已激活','未激活') AS RESULT FROMUserLoginInfo;
SELECT fname,lname,(math+sci+lit) AS total,
CASE WHEN (math+sci+lit) < 50 THEN 'D'
WHEN (math+sci+lit) BETWEEN 50 AND 150 THEN 'C'
WHEN (math+sci+lit) BETWEEN 151 AND 250 THEN 'B'
ELSE 'A' END AS grade FROM marks;
SELECT IF(ENCRYPT('sue','ts')=upass,'allow','deny') AS LoginResultFROM users WHERE uname = 'sue';

七、格式化函数

  • DATE_FORMAT(date,fmt) 依照字符串fmt格式化日期date值
  • FORMAT(x,y) 把x格式化为以逗号隔开的数字序列,y是结果的小数位数
  • INET_ATON(ip) 返回IP地址的数字表示
  • INET_NTOA(num) 返回数字所代表的IP地址
  • TIME_FORMAT(time,fmt) 依照字符串fmt格式化时间time值

其中最简单的是FORMAT()函数,它可以把大的数值格式化为以逗号间隔的易读的序列。

示例:

1
2
3
4
5
6
7
SELECT FORMAT(34234.34323432,3);
SELECT DATE_FORMAT(NOW(),'%W,%D %M %Y %r');
SELECT DATE_FORMAT(NOW(),'%Y-%m-%d');
SELECT DATE_FORMAT(19990330,'%Y-%m-%d');
SELECT DATE_FORMAT(NOW(),'%h:%i %p');
SELECT INET_ATON('10.122.89.47');
SELECT INET_NTOA(175790383);

八、类型转化函数

为了进行数据类型转化,MySQL提供了CAST()函数,它可以把一个值转化为指定的数据类型。类型有:BINARY,CHAR,DATE,TIME,DATETIME,SIGNED,UNSIGNED

示例:

1
2
SELECT CAST (NOW() AS SIGNED INTEGER),CURDATE()+0;
SELECT 'f' = BINARY 'F','f' = CAST('F' AS BINARY);

九、系统信息函数

  • DATABASE() 返回当前数据库名
  • BENCHMARK(count,expr) 将表达式expr重复运行count次
  • CONNECTION_ID() 返回当前客户的连接ID
  • FOUND_ROWS() 返回最后一个SELECT查询进行检索的总行数
  • USER()或SYSTEM_USER() 返回当前登陆用户名
  • VERSION() 返回MySQL服务器的版本

示例:

1
2
3
SELECT DATABASE(),VERSION(), USER();
SELECT BENCHMARK(9999999,LOG(RAND()*PI()));
-- 该例中,MySQL计算LOG(RAND()*PI())表达式9999999次。

十、mysql8

默认情况下,函数名称和其后的括号之间必须没有空格。这有助于MySQL解析器区分函数调用和对恰好与函数同名的表或列的引用。但是,函数参数周围可以有空格。

通过使用--sql-mode=IGNORE_SPACE选项启动MySQL服务器,可以告诉它接受函数名后面的空格。单个客户端程序可以使用mysql的client_IGNORE_SPACE选项请求此real_connect()行为。在这两种情况下,所有函数名都将成为保留字。

Name Description
& 按位与
> 大于运算符
>> 右移
>= 大于或等于运算符
< 少于运算符
<>, != 不等于运算符
<< 左移
<= 小于或等于运算符
<=> NULL安全等于运算符
%, MOD 模运算符
* 乘法运算符
+ 加法运算符
- 减号
- 更改参数的符号
-> 评估路径后从JSON列返回值;等效于JSON_EXTRACT()。
->> 评估路径并取消引用结果后,从JSON列返回值;等效JSON_UNQUOTE(JSON_EXTRACT())。
/ 除法运算符
:= 赋值
= 分配值(作为SET 语句的一部分 ,或作为语句的SET子句的 一部分UPDATE)
= 平等算子
^ 按位异或
ABS() 返回绝对值
ACOS() 返回反余弦
ADDDATE() 将时间值(间隔)添加到日期值
ADDTIME() 加时间
AES_DECRYPT() 使用AES解密
AES_ENCRYPT() 使用AES加密
AND, && 逻辑与
ANY_VALUE() 禁止拒绝ONLY_FULL_GROUP_BY值
ASCII() 返回最左边字符的数值
ASIN() 返回反正弦
ASYMMETRIC_DECRYPT() 使用私钥或公钥解密密文
ASYMMETRIC_DERIVE() 从非对称密钥派生对称密钥
ASYMMETRIC_ENCRYPT() 使用私钥或公钥加密明文
ASYMMETRIC_SIGN() 从摘要生成签名
ASYMMETRIC_VERIFY() 验证签名与摘要匹配
ATAN() 返回反正切
ATAN2(), ATAN() 返回两个参数的反正切
AVG() 返回参数的平均值
BENCHMARK() 重复执行一个表达式
BETWEEN ... AND ... 值是否在值范围内
BIN() 返回包含数字的二进制表示形式的字符串
BIN_TO_UUID() 将二进制UUID转换为字符串
BINARY 将字符串转换为二进制字符串
BIT_AND() 按位返回AND
BIT_COUNT() 返回设置的位数
BIT_LENGTH() 返回参数的长度(以位为单位)
BIT_OR() 按位返回或
BIT_XOR() 返回按位异或
CAN_ACCESS_COLUMN() 限内部使用
CAN_ACCESS_DATABASE() 限内部使用
CAN_ACCESS_TABLE() 限内部使用
CAN_ACCESS_VIEW() 限内部使用
CASE 案例运算符
CAST() 将值强制转换为特定类型
CEIL() 返回不小于参数的最小整数值
CEILING() 返回不小于参数的最小整数值
CHAR() 返回每个传递的整数的字符
CHAR_LENGTH() 返回参数中的字符数
CHARACTER_LENGTH() CHAR_LENGTH()相同
CHARSET() 返回参数的字符集
COALESCE() 返回第一个非NULL参数
COERCIBILITY() 返回字符串参数的排序规则强制性值
COLLATION() 返回字符串参数的排序规则
COMPRESS() 以二进制字符串形式返回结果
CONCAT() 返回串联的字符串
CONCAT_WS() 返回用分隔符连接
CONNECTION_ID() 返回连接的连接ID(线程ID)
CONV() 在不同的基数之间转换数字
CONVERT() 将值强制转换为特定类型
CONVERT_TZ() 从一个时区转换到另一个时区
COS() 返回余弦
COT() 返回余切
COUNT() 返回计数返回的行数
COUNT(DISTINCT) 返回多个不同值的计数
CRC32() 计算循环冗余校验值
CREATE_ASYMMETRIC_PRIV_KEY() 创建私钥
CREATE_ASYMMETRIC_PUB_KEY() 创建公钥
CREATE_DH_PARAMETERS() 生成共享的DH机密
CREATE_DIGEST() 从字符串生成摘要
CUME_DIST() 累积分布值
CURDATE() 返回当前日期
CURRENT_DATE(), CURRENT_DATE CURDATE()相同
CURRENT_ROLE() 返回当前的活动角色
CURRENT_TIME(), CURRENT_TIME CURTIME()相同
CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP NOW()相同
CURRENT_USER(), CURRENT_USER 经过身份验证的用户名和主机名
CURTIME() 返回当前时间
DATABASE() 返回默认(当前)数据库名称
DATE() 提取日期或日期时间表达式的日期部分
DATE_ADD() 将时间值(间隔)添加到日期值
DATE_FORMAT() 指定格式日期
DATE_SUB() 从日期中减去时间值(间隔)
DATEDIFF() 减去两个日期
DAY() DAYOFMONTH()相同
DAYNAME() 返回工作日的名称
DAYOFMONTH() 返回月份中的一天(0-31)
DAYOFWEEK() 返回参数的工作日索引
DAYOFYEAR() 返回一年中的某天(1-366)
DEFAULT() 返回表列的默认值
DEGREES() 将弧度转换为度
DENSE_RANK() 当前行在其分区内的排名,没有空格
DIV 整数除法
ELT() 返回索引号处的字符串
EXP() Raise to the power of
EXPORT_SET() 返回一个字符串,这样对于值位中设置的每个位,您将获得一个打开的字符串,对于每个未设置的位,您将获得一个关闭的字符串
EXTRACT() 提取部分日期
ExtractValue() 使用XPath表示法从XML字符串中提取值
FIELD() 后续参数中第一个参数的索引(位置)
FIND_IN_SET() 第二个参数中第一个参数的索引(位置)
FIRST_VALUE() 窗口第一行的自变量值
FLOOR() 返回不大于参数的最大整数值
FORMAT() 返回格式化为指定的小数位数的数字
FORMAT_BYTES() (introduced 8.0.16) 将字节数转换为单位的值
FORMAT_PICO_TIME() (introduced 8.0.16) 将以皮秒为单位的时间转换为单位的值
FOUND_ROWS() 对于带有LIMIT子句的SELECT,如果没有LIMIT子句,将返回的行数
FROM_BASE64() 解码base64编码的字符串并返回结果
FROM_DAYS() 将天数转换为日期
FROM_UNIXTIME() 将Unix时间戳记格式化为日期
GeomCollection() 从几何构造几何集合
GeometryCollection() 从几何构造几何集合
GET_DD_COLUMN_PRIVILEGES() 限内部使用
GET_DD_CREATE_OPTIONS() 限内部使用
GET_DD_INDEX_SUB_PART_LENGTH() 限内部使用
GET_FORMAT() 返回日期格式字符串
GET_LOCK() 获取命名锁
GREATEST() 返回最大参数
GROUP_CONCAT() 返回串联的字符串
GROUPING() 将超级汇总的ROLLUP行与常规行区别开
GTID_SUBSET() 如果子集中的所有GTID也都已设置,则返回true;否则,返回true。否则为假。
GTID_SUBTRACT() 返回集合中所有不在子集中的GTID。
HEX() 十进制或字符串值的十六进制表示
HOUR() 提取时间
ICU_VERSION() ICU库版本
IF() If/else construct
IFNULL() Null if/else construct
IN() 一个值是否在一组值内
INET_ATON() 返回IP地址的数值
INET_NTOA() 从数值返回IP地址
INET6_ATON() 返回IPv6地址的数值
INET6_NTOA() 从数值返回IPv6地址
INSERT() 在指定位置插入子字符串,最多指定字符数
INSTR() 返回第一次出现的子串的索引
INTERNAL_AUTO_INCREMENT() 限内部使用
INTERNAL_AVG_ROW_LENGTH() 限内部使用
INTERNAL_CHECK_TIME() 限内部使用
INTERNAL_CHECKSUM() 限内部使用
INTERNAL_DATA_FREE() 限内部使用
INTERNAL_DATA_LENGTH() 限内部使用
INTERNAL_DD_CHAR_LENGTH() 限内部使用
INTERNAL_GET_COMMENT_OR_ERROR() 限内部使用
INTERNAL_GET_ENABLED_ROLE_JSON() (introduced 8.0.19) 限内部使用
INTERNAL_GET_HOSTNAME() (introduced 8.0.19) 限内部使用
INTERNAL_GET_USERNAME() (introduced 8.0.19) 限内部使用
INTERNAL_GET_VIEW_WARNING_OR_ERROR() 限内部使用
vINTERNAL_INDEX_COLUMN_CARDINALITY() 限内部使用
INTERNAL_INDEX_LENGTH() 限内部使用
INTERNAL_IS_ENABLED_ROLE() (introduced 8.0.19) 限内部使用
INTERNAL_IS_MANDATORY_ROLE() (introduced 8.0.19) 限内部使用
INTERNAL_KEYS_DISABLED() 限内部使用
INTERNAL_MAX_DATA_LENGTH() 限内部使用
INTERNAL_TABLE_ROWS() 限内部使用
INTERNAL_UPDATE_TIME() 限内部使用
INTERVAL() 返回小于第一个参数的参数的索引
IS 针对布尔值测试值
IS_FREE_LOCK() 命名锁是否释放
IS_IPV4() 参数是否为IPv4地址
IS_IPV4_COMPAT() 参数是否为IPv4兼容地址
IS_IPV4_MAPPED() 参数是否为IPv4映射的地址
IS_IPV6() 参数是否为IPv6地址
IS NOT 针对布尔值测试值
IS NOT NULL 非空值测试
IS NULL 空值测试
IS_USED_LOCK() 是否使用了命名锁;如果为true,则返回连接标识符
IS_UUID() 参数是否为有效的UUID
ISNULL() 测试参数是否为NULL
JSON_ARRAY() 创建JSON数组
JSON_ARRAY_APPEND() 将数据附加到JSON文档
JSON_ARRAY_INSERT() 插入JSON数组
JSON_ARRAYAGG() 将结果集作为单个JSON数组返回
JSON_CONTAINS() JSON文档是否在路径中包含特定对象
JSON_CONTAINS_PATH() JSON文档是否在路径中包含任何数据
JSON_DEPTH() JSON文档的最大深度
JSON_EXTRACT() 从JSON文档返回数据
JSON_INSERT() 将数据插入JSON文档
JSON_KEYS() JSON文档中的键数组
JSON_LENGTH() JSON文档中的元素数
JSON_MERGE() (deprecated) (已弃用) 合并JSON文档,保留重复的键。JSON_MERGE_PRESERVE()的已弃用同义词
JSON_MERGE_PATCH() 合并JSON文档,替换重复键的值
JSON_MERGE_PRESERVE() 合并JSON文档,保留重复的键
JSON_OBJECT() 创建JSON对象
JSON_OBJECTAGG() 将结果集作为单个JSON对象返回
JSON_OVERLAPS() (introduced 8.0.17) (引入8.0.17) 比较两个JSON文档,如果它们具有相同的键值对或数组元素,则返回TRUE(1),否则返回FALSE(0)
JSON_PRETTY() 以易于阅读的格式打印JSON文档
JSON_QUOTE() 引用JSON文档
JSON_REMOVE() 从JSON文档中删除数据
JSON_REPLACE() 替换JSON文档中的值
JSON_SCHEMA_VALID() (introduced 8.0.17) (引入8.0.17) 根据JSON模式验证JSON文档;如果文档针对架构进行验证,则返回TRUE / 1;否则,则返回FALSE / 0
JSON_SCHEMA_VALIDATION_REPORT() (introduced 8.0.17) (引入8.0.17) 根据JSON模式验证JSON文档;以JSON格式返回有关验证结果的报告,包括成功或失败以及失败原因
JSON_SEARCH() JSON文档中值的路径
JSON_SET() 将数据插入JSON文档
JSON_STORAGE_FREE() 部分更新后,JSON列值的二进制表示形式中的可用空间
JSON_STORAGE_SIZE() 用于存储JSON文档的二进制表示的空间
JSON_TABLE() 从JSON表达式返回数据作为关系表
JSON_TYPE() JSON值类型
JSON_UNQUOTE() 去除JSON值引号
JSON_VALID() JSON值是否有效
JSON_VALUE() (introduced 8.0.21) Extract value from JSON document at location pointed to by path provided; return this value as VARCHAR(512) or specified type
LAG() 分区中当前行滞后的参数值
LAST_DAY 返回参数的月份的最后一天
LAST_INSERT_ID() 最后一个INSERT的AUTOINCREMENT列的值
LAST_VALUE() 窗口最后一行的参数值
LCASE() LOWER()相同
LEAD() 来自分区内当前行的行的参数值
LEAST() 返回最小的参数
LEFT() 返回指定的最左边的字符数
LENGTH() 返回字符串的长度(以字节为单位)
LIKE 简单模式匹配
LineString() 从Point值构造LineString
LN() 返回参数的自然对数
LOAD_FILE() 加载命名文件
LOCALTIME(), LOCALTIME NOW()相同
LOCALTIMESTAMP, LOCALTIMESTAMP() NOW()相同
LOCATE() 返回子串第一次出现的位置
LOG() 返回第一个参数的自然对数
LOG10() 返回参数的以10为底的对数
LOG2() 返回参数的以2为底的对数
LOWER() 以小写形式返回参数
LPAD() 返回字符串参数,用指定的字符串左填充
LTRIM() 删除前导空格
MAKE_SET() 返回一组逗号分隔的字符串,这些字符串在位中具有相应的位
MAKEDATE() 从一年中的年月日创建日期
MAKETIME() 从小时,分钟,秒创建时间
MASTER_POS_WAIT() 阻塞直到从站读取并应用所有更新到指定位置
MATCH 执行全文搜索
MAX() 返回最大值
MBRContains() 一个几何的MBR是否包含另一个几何的MBR
MBRCoveredBy() 一个MBR是否被另一个覆盖
MBRCovers() 一个MBR是否涵盖另一个
MBRDisjoint() 两个几何的MBR是否不相交
MBREquals() 两个几何的MBR是否相等
MBRIntersects() 两个几何的MBR是否相交
MBROverlaps() 两个几何的MBR是否重叠
MBRTouches() 两个几何的MBR是否接触
MBRWithin() 一个几何的MBR是否在另一个几何的MBR内
MD5() 计算MD5校验和
MEMBER OF() (introduced 8.0.17) (引入8.0.17) 如果第一个操作数与作为第二个操作数传递的JSON数组的任何元素匹配,则返回true(1),否则返回false(0)
MICROSECOND() 从参数返回微秒
MID() 返回从指定位置开始的子字符串
MIN() 返回最小值
MINUTE() 返回参数的分钟
MOD() Return the remainder
MONTH() 返回经过日期的月份
MONTHNAME() 返回月份名称
MultiLineString() 从LineString值构造MultiLineString
MultiPoint() 从Point值构造MultiPoint
MultiPolygon() 从多边形值构造MultiPolygon
NAME_CONST() 使列具有给定名称
NOT, ! 取反值
NOT BETWEEN ... AND ... 值是否不在值范围内
NOT IN() 一个值是否不在一组值内
NOT LIKE 否定简单模式匹配
NOT REGEXP 否REGEXP
NOW() 返回当前日期和时间
NTH_VALUE() 窗口第N行的自变量值
NTILE() 分区中当前行的存储桶号。
NULLIF() 如果expr1 = expr2,则返回NULL
OCT() 返回包含数字的八进制表示形式的字符串
OCTET_LENGTH() LENGTH()相同
[OR, `
ORD() 返回参数最左边字符的字符代码
PERCENT_RANK() 百分比排名值
PERIOD_ADD() 在一年的月份中添加一个期间
PERIOD_DIFF() 返回期间之间的月数
PI() 返回pi的值
Point() 从坐标构造点
Polygon() 从LineString参数构造多边形
POSITION() LOCATE()相同
POW() 将自变量提高到指定的幂
POWER() 将自变量提高到指定的幂
PS_CURRENT_THREAD_ID() (introduced 8.0.16) (引入8.0.16) 当前线程的性能架构线程ID
PS_THREAD_ID() (introduced 8.0.16) (引入8.0.16) 给定线程的性能架构线程ID
QUARTER() 从日期参数返回季度
QUOTE() 转义要在SQL语句中使用的参数
RADIANS() 返回参数转换为弧度
RAND() 返回一个随机浮点值
RANDOM_BYTES() 返回一个随机字节向量
RANK() 当前行在其分区内的排名,带有空格
REGEXP 字符串是否匹配正则表达式
REGEXP_INSTR() 子串匹配正则表达式的起始索引
REGEXP_LIKE() 字符串是否匹配正则表达式
REGEXP_REPLACE() 替换匹配正则表达式的子字符串
REGEXP_SUBSTR() 返回匹配正则表达式的子字符串
RELEASE_ALL_LOCKS() 释放所有当前的命名锁
RELEASE_LOCK() 释放命名的锁
REPEAT() 重复字符串指定次数
REPLACE() 替换出现的指定字符串
REVERSE() 反转字符串中的字符
RIGHT() 返回指定的最右边字符
RLIKE 字符串是否匹配正则表达式
ROLES_GRAPHML() 返回表示内存角色子图的GraphML文档
ROUND() Round the argument
ROW_COUNT() 更新的行数
ROW_NUMBER() 分区中当前行的数量
RPAD() 将字符串追加指定次数
RTRIM() 删除尾随空格
SCHEMA() DATABASE()相同
SEC_TO_TIME() 将秒转换为“ hh:mm:ss”格式
SECOND() 返回秒(0-59)
SESSION_USER() USER()相同
SHA1(), SHA() 计算SHA-1 160位校验和
SHA2() 计算SHA-2校验和
SIGN() 返回参数的符号
SIN() 返回参数的正弦
SLEEP() 睡觉几秒钟
SOUNDEX() 返回soundex字符串
SOUNDS LIKE 比较声音
SPACE() 返回指定数量的字符串
SQRT() 返回参数的平方根
ST_Area() 返回多边形或多多边形区域
ST_AsBinary(), ST_AsWKB() 从内部几何格式转换为WKB
ST_AsGeoJSON() 从几何体生成GeoJSON对象
ST_AsText(), ST_AsWKT() 从内部几何格式转换为WKT
ST_Buffer() 返回距几何指定距离内的点的几何
ST_Buffer_Strategy() 产生ST_Buffer()的策略选项
ST_Centroid() 返回质心为点
ST_Contains() 一个几何是否包含另一个
ST_ConvexHull() 返回几何的凸包
ST_Crosses() 一个几何图形是否交叉
ST_Difference() 两个几何的返回点设置差
ST_Dimension() 几何尺寸
ST_Disjoint() 一个几何是否与另一个几何不相交
ST_Distance() 一种几何形状与另一种几何形状的距离
ST_Distance_Sphere() 两个几何之间的最小地球距离
ST_EndPoint() LineString的终点
ST_Envelope() 返回几何的MBR
ST_Equals() 一个几何是否等于另一个
ST_ExteriorRing() 返回多边形的外圈
ST_GeoHash() 产生一个哈希值
ST_GeomCollFromText(), ST_GeometryCollectionFromText(), ST_GeomCollFromTxt() 从WKT返回几何集合
ST_GeomCollFromWKB(), ST_GeometryCollectionFromWKB() 从WKB返回几何集合
ST_GeometryN() 从几何集合返回第N个几何
ST_GeometryType() 返回几何类型的名称
ST_GeomFromGeoJSON() 从GeoJSON对象生成几何
ST_GeomFromText(), ST_GeometryFromText() 从WKT返回几何
ST_GeomFromWKB(), ST_GeometryFromWKB() 从WKB返回几何
ST_InteriorRingN() 返回多边形的第N个内环
ST_Intersection() 返回点设置两个几何的交点
ST_Intersects() 一个几何是否相交
ST_IsClosed() 几何是否闭合且简单
ST_IsEmpty() 占位符功能
ST_IsSimple() 几何是否简单
ST_IsValid() 几何是否有效
ST_LatFromGeoHash() 从geohash值返回纬度
ST_Latitude() (introduced 8.0.12) (引入8.0.12) 返回点的纬度
ST_Length() 返回LineString的长度
ST_LineFromText(), ST_LineStringFromText() 从WKT构造LineString
ST_LineFromWKB(), ST_LineStringFromWKB() 从WKB构造LineString
ST_LongFromGeoHash() 从geohash值返回经度
ST_Longitude() (introduced 8.0.12) (引入8.0.12) 返回点经度
ST_MakeEnvelope() 围绕两点的矩形
ST_MLineFromText(), ST_MultiLineStringFromText() 从WKT构造MultiLineString
ST_MLineFromWKB(), ST_MultiLineStringFromWKB() 从WKB构造MultiLineString
ST_MPointFromText(), ST_MultiPointFromText() 从WKT构造MultiPoint
ST_MPointFromWKB(), ST_MultiPointFromWKB() 从WKB构造MultiPoint
ST_MPolyFromText(), ST_MultiPolygonFromText() 从WKT构造MultiPolygon
ST_MPolyFromWKB(), ST_MultiPolygonFromWKB() 从WKB构造MultiPolygon
ST_NumGeometries() 返回几何集合中的几何数量
ST_NumInteriorRing(), ST_NumInteriorRings() 返回多边形内环的数量
ST_NumPoints() 返回LineString中的点数
ST_Overlaps() 一个几何图形是否重叠
ST_PointFromGeoHash() 将geohash值转换为POINT值
ST_PointFromText() WKT的构造点
ST_PointFromWKB() 从WKB构造点
ST_PointN() 从LineString返回第N个点
ST_PolyFromText(), ST_PolygonFromText() 从WKT构造多边形
ST_PolyFromWKB(), ST_PolygonFromWKB() 从WKB构造多边形
ST_Simplify() 返回简化的几何
ST_SRID() 返回几何的空间参考系统ID
ST_StartPoint() LineString的起点
ST_SwapXY() 返回参数已交换X / Y坐标
ST_SymDifference() 返回点设置两个几何的对称差
ST_Touches() 一种几何是否接触另一种
ST_Transform() (introduced 8.0.13) 变换几何坐标
ST_Union() 返回点集两个几何的并集
ST_Validate() 返回经过验证的几何
ST_Within() 一个几何是否在另一个几何之内
ST_X() 返回点的X坐标
ST_Y() 返回点的Y坐标
STATEMENT_DIGEST() 计算语句摘要哈希值
STATEMENT_DIGEST_TEXT() 计算归一化语句摘要
STD() 返回标准差
STDDEV() 返回标准差
STDDEV_POP() 返回标准差
STDDEV_SAMP() 返回样品标准偏差
STR_TO_DATE() 将字符串转换为日期
STRCMP() 比较两个字符串
SUBDATE() 用三个参数调用时DATE_SUB()相同
SUBSTR() 返回指定的子字符串
SUBSTRING() 返回指定的子字符串
SUBSTRING_INDEX() 在指定的定界符出现次数之前从字符串返回子字符串
SUBTIME() 减去时间
SUM() 返回总和
SYSDATE() 返回函数执行的时间
SYSTEM_USER() USER()相同
TAN() 返回参数的正切值
TIME() 提取传递的表达式的时间部分
TIME_FORMAT() 格式化为时间
TIME_TO_SEC() 将参数转换为秒
TIMEDIFF() 减去时间
TIMESTAMP() 仅使用一个参数,此函数将返回date或datetime表达式;有两个参数,参数的总和
TIMESTAMPADD() 向日期时间表达式添加间隔
TIMESTAMPDIFF() 从日期时间表达式中减去一个间隔
TO_BASE64() 返回转换为以64为底的字符串的参数
TO_DAYS() 返回日期参数转换为天
TO_SECONDS() 返回从Year 0开始转换为秒的date或datetime参数
TRIM() 删除前导和尾随空格
TRUNCATE() 截断为指定的小数位数
UCASE() UPPER()相同
UNCOMPRESS() 解压字符串压缩
UNCOMPRESSED_LENGTH() 返回压缩前的字符串长度
UNHEX() 返回包含十六进制数字的字符串
UNIX_TIMESTAMP() 返回Unix时间戳
UpdateXML() 返回替换的XML片段
UPPER() 转换为大写
USER() 客户端提供的用户名和主机名
UTC_DATE() 返回当前UTC日期
UTC_TIME() 返回当前UTC时间
UTC_TIMESTAMP() 返回当前UTC日期和时间
UUID() 返回通用唯一标识符(UUID)
UUID_SHORT() 返回一个整数通用标识符
UUID_TO_BIN() 将字符串UUID转换为二进制
VALIDATE_PASSWORD_STRENGTH() 确定密码强度
VALUES() 定义在INSERT期间要使用的值
VAR_POP() 返回总体标准方差
VAR_SAMP() 返回样本方差
VARIANCE() 返回总体标准方差
VERSION() 返回一个指示MySQL服务器版本的字符串
WAIT_FOR_EXECUTED_GTID_SET() 等待直到给定的GTID在从站上执行
WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS() (deprecated 8.0.18) (不推荐使用8.0.18) 使用WAIT_FOR_EXECUTED_GTID_SET()。
WEEK() 返回星期数
WEEKDAY() 返回工作日索引
WEEKOFYEAR() 返回日期的日历周(1-53)
WEIGHT_STRING() 返回字符串的权重字符串
XOR 逻辑异或
YEAR() 返回年份
YEARWEEK() 返回年和周
[` `](https://dev.mysql.com/doc/refman/8.0/en/bit-functions.html#operator_bitwise-or)
~ 按位取反

ABS() 返回绝对值
ACOS() 返回反余弦
ADDDATE() 将时间值(间隔)添加到日期值
ADDTIME() 加时间
AES_DECRYPT() 使用AES解密
AES_ENCRYPT() 使用AES加密
AND, && 逻辑与
ANY_VALUE() 禁止拒绝ONLY_FULL_GROUP_BY值
ASCII() 返回最左边字符的数值
ASIN() 返回反正弦
ASYMMETRIC_DECRYPT() 使用私钥或公钥解密密文
ASYMMETRIC_DERIVE() 从非对称密钥派生对称密钥
ASYMMETRIC_ENCRYPT() 使用私钥或公钥加密明文
ASYMMETRIC_SIGN() 从摘要生成签名
ASYMMETRIC_VERIFY() 验证签名与摘要匹配
ATAN() 返回反正切
ATAN2(), ATAN() 返回两个参数的反正切
AVG() 返回参数的平均值
BENCHMARK() 重复执行一个表达式
BETWEEN ... AND ... 值是否在值范围内
BIN() 返回包含数字的二进制表示形式的字符串
BIN_TO_UUID() 将二进制UUID转换为字符串
BINARY 将字符串转换为二进制字符串
BIT_AND() 按位返回AND
BIT_COUNT() 返回设置的位数
BIT_LENGTH() 返回参数的长度(以位为单位)
BIT_OR() 按位返回或
BIT_XOR() 返回按位异或
CAN_ACCESS_COLUMN() 限内部使用
CAN_ACCESS_DATABASE() 限内部使用
CAN_ACCESS_TABLE() 限内部使用
CAN_ACCESS_VIEW() 限内部使用
CASE 案例运算符
CAST() 将值强制转换为特定类型
CEIL() 返回不小于参数的最小整数值
CEILING() 返回不小于参数的最小整数值
CHAR() 返回每个传递的整数的字符
CHAR_LENGTH() 返回参数中的字符数
CHARACTER_LENGTH() CHAR_LENGTH()的同义词
CHARSET() 返回参数的字符集
COALESCE() 返回第一个非NULL参数
COERCIBILITY() 返回字符串参数的排序规则强制性值
COLLATION() 返回字符串参数的排序规则
COMPRESS() 以二进制字符串形式返回结果
CONCAT() 返回串联的字符串
CONCAT_WS() 返回用分隔符连接
CONNECTION_ID() 返回连接的连接ID(线程ID)
CONV() 在不同的基数之间转换数字
CONVERT() 将值强制转换为特定类型
CONVERT_TZ() 从一个时区转换到另一个时区
COS() 返回余弦
COT() 返回余切
COUNT() 返回计数返回的行数
COUNT(DISTINCT) 返回多个不同值的计数
CRC32() 计算循环冗余校验值
CREATE_ASYMMETRIC_PRIV_KEY() 创建私钥
CREATE_ASYMMETRIC_PUB_KEY() 创建公钥
CREATE_DH_PARAMETERS() 生成共享的DH机密
CREATE_DIGEST() 从字符串生成摘要
CUME_DIST() 累积分布值
CURDATE() 返回当前日期
CURRENT_DATE(), CURRENT_DATE CURDATE()的同义词
CURRENT_ROLE() 返回当前的活动角色
CURRENT_TIME(), CURRENT_TIME CURTIME()的同义词
CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP NOW()的同义词
CURRENT_USER(), CURRENT_USER 经过身份验证的用户名和主机名
CURTIME() 返回当前时间
DATABASE() 返回默认(当前)数据库名称
DATE() 提取日期或日期时间表达式的日期部分
DATE_ADD() 将时间值(间隔)添加到日期值
DATE_FORMAT() 指定格式日期
DATE_SUB() 从日期中减去时间值(间隔)
DATEDIFF() 减去两个日期
DAY() DAYOFMONTH()的同义词
DAYNAME() 返回工作日的名称
DAYOFMONTH() 返回月份中的一天(0-31)
DAYOFWEEK() 返回参数的工作日索引
DAYOFYEAR() 返回一年中的某天(1-366)
DEFAULT() 返回表列的默认值
DEGREES() 将弧度转换为度
DENSE_RANK() 当前行在其分区内的排名,没有空格
DIV 整数除法
ELT() 返回索引号处的字符串
EXP() 提升力量
EXPORT_SET() 返回一个字符串,这样对于值位中设置的每个位,您将获得一个打开的字符串,对于每个未设置的位,您将获得一个关闭的字符串
EXTRACT() 提取部分日期
ExtractValue() 使用XPath表示法从XML字符串中提取值
FIELD() 后续参数中第一个参数的索引(位置)
FIND_IN_SET() 第二个参数中第一个参数的索引(位置)
FIRST_VALUE() 窗框第一行的自变量值
FLOOR() 返回不大于参数的最大整数值
FORMAT() 返回格式化为指定的小数位数的数字
FORMAT_BYTES() (引入8.0.16) 将字节数转换为单位的值
FORMAT_PICO_TIME() (引入8.0.16) 将以皮秒为单位的时间转换为单位的值
FOUND_ROWS() 对于带有LIMIT子句的SELECT,如果没有LIMIT子句,将返回的行数
FROM_BASE64() 解码base64编码的字符串并返回结果
FROM_DAYS() 将天数转换为日期
FROM_UNIXTIME() 将Unix时间戳记格式化为日期
GeomCollection() 从几何构造几何集合
GeometryCollection() 从几何构造几何集合
GET_DD_COLUMN_PRIVILEGES() 限内部使用
GET_DD_CREATE_OPTIONS() 限内部使用
GET_DD_INDEX_SUB_PART_LENGTH() 限内部使用
GET_FORMAT() 返回日期格式字符串
GET_LOCK() 获取命名锁
GREATEST() 返回最大参数
GROUP_CONCAT() 返回串联的字符串
GROUPING() 将超级汇总的ROLLUP行与常规行区别开
GTID_SUBSET() 如果子集中的所有GTID也都已设置,则返回true;否则,返回true。否则为假。
GTID_SUBTRACT() 返回集合中所有不在子集中的GTID。
HEX() 十进制或字符串值的十六进制表示
HOUR() 提取时间
ICU_VERSION() ICU库版本
IF() 如果/其他构造
IFNULL() 空if / else构造
IN() 一个值是否在一组值内
INET_ATON() 返回IP地址的数值
INET_NTOA() 从数值返回IP地址
INET6_ATON() 返回IPv6地址的数值
INET6_NTOA() 从数值返回IPv6地址
INSERT() 在指定位置插入子字符串,最多指定字符数
INSTR() 返回第一次出现的子串的索引
INTERNAL_AUTO_INCREMENT() 限内部使用
INTERNAL_AVG_ROW_LENGTH() 限内部使用
INTERNAL_CHECK_TIME() 限内部使用
INTERNAL_CHECKSUM() 限内部使用
INTERNAL_DATA_FREE() 限内部使用
INTERNAL_DATA_LENGTH() 限内部使用
INTERNAL_DD_CHAR_LENGTH() 限内部使用
INTERNAL_GET_COMMENT_OR_ERROR() 限内部使用
INTERNAL_GET_ENABLED_ROLE_JSON() (引入8.0.19) 限内部使用
INTERNAL_GET_HOSTNAME() (引入8.0.19) 限内部使用
INTERNAL_GET_USERNAME() (引入8.0.19) 限内部使用
INTERNAL_GET_VIEW_WARNING_OR_ERROR() 限内部使用
INTERNAL_INDEX_COLUMN_CARDINALITY() 限内部使用
INTERNAL_INDEX_LENGTH() 限内部使用
INTERNAL_IS_ENABLED_ROLE() (引入8.0.19) 限内部使用
INTERNAL_IS_MANDATORY_ROLE() (引入8.0.19) 限内部使用
INTERNAL_KEYS_DISABLED() 限内部使用
INTERNAL_MAX_DATA_LENGTH() 限内部使用
INTERNAL_TABLE_ROWS() 限内部使用
INTERNAL_UPDATE_TIME() 限内部使用
INTERVAL() 返回小于第一个参数的参数的索引
IS 针对布尔值测试值
IS_FREE_LOCK() 命名锁是否免费
IS_IPV4() 参数是否为IPv4地址
IS_IPV4_COMPAT() 参数是否为IPv4兼容地址
IS_IPV4_MAPPED() 参数是否为IPv4映射的地址
IS_IPV6() 参数是否为IPv6地址
IS NOT 针对布尔值测试值
IS NOT NULL 非空值测试
IS NULL 空值测试
IS_USED_LOCK() 是否使用了命名锁;如果为true,则返回连接标识符
IS_UUID() 参数是否为有效的UUID
ISNULL() 测试参数是否为NULL
JSON_ARRAY() 创建JSON数组
JSON_ARRAY_APPEND() 将数据附加到JSON文档
JSON_ARRAY_INSERT() 插入JSON数组
JSON_ARRAYAGG() 将结果集作为单个JSON数组返回
JSON_CONTAINS() JSON文档是否在路径中包含特定对象
JSON_CONTAINS_PATH() JSON文档是否在路径中包含任何数据
JSON_DEPTH() JSON文档的最大深度
JSON_EXTRACT() 从JSON文档返回数据
JSON_INSERT() 将数据插入JSON文档
JSON_KEYS() JSON文档中的键数组
JSON_LENGTH() JSON文档中的元素数
JSON_MERGE() (已弃用) 合并JSON文档,保留重复的键。JSON_MERGE_PRESERVE()的已弃用同义词
JSON_MERGE_PATCH() 合并JSON文档,替换重复键的值
JSON_MERGE_PRESERVE() 合并JSON文档,保留重复的键
JSON_OBJECT() 创建JSON对象
JSON_OBJECTAGG() 将结果集作为单个JSON对象返回
JSON_OVERLAPS() (引入8.0.17) 比较两个JSON文档,如果它们具有相同的键值对或数组元素,则返回TRUE(1),否则返回FALSE(0)
JSON_PRETTY() 以易于阅读的格式打印JSON文档
JSON_QUOTE() 引用JSON文档
JSON_REMOVE() 从JSON文档中删除数据
JSON_REPLACE() 替换JSON文档中的值
JSON_SCHEMA_VALID() (引入8.0.17) 根据JSON模式验证JSON文档;如果文档针对架构进行验证,则返回TRUE / 1;否则,则返回FALSE / 0
JSON_SCHEMA_VALIDATION_REPORT() (引入8.0.17) 根据JSON模式验证JSON文档;以JSON格式返回有关验证结果的报告,包括成功或失败以及失败原因
JSON_SEARCH() JSON文档中值的路径
JSON_SET() 将数据插入JSON文档
JSON_STORAGE_FREE() 部分更新后,JSON列值的二进制表示形式中的可用空间
JSON_STORAGE_SIZE() 用于存储JSON文档的二进制表示的空间
JSON_TABLE() 从JSON表达式返回数据作为关系表
JSON_TYPE() JSON值类型
JSON_UNQUOTE() 取消引用JSON值
JSON_VALID() JSON值是否有效
LAG() 分区中当前行滞后的参数值
LAST_DAY 返回参数的月份的最后一天
LAST_INSERT_ID() 最后一个INSERT的AUTOINCREMENT列的值
LAST_VALUE() 窗口框架最后一行的参数值
LCASE() LOWER()的同义词
LEAD() 来自分区内当前行的行的参数值
LEAST() 返回最小的参数
LEFT() 返回指定的最左边的字符数
LENGTH() 返回字符串的长度(以字节为单位)
LIKE 简单模式匹配
LineString() 从Point值构造LineString
LN() 返回参数的自然对数
LOAD_FILE() 加载命名文件
LOCALTIME(), LOCALTIME NOW()的同义词
LOCALTIMESTAMP, LOCALTIMESTAMP() NOW()的同义词
LOCATE() 返回子串第一次​​出现的位置
LOG() 返回第一个参数的自然对数
LOG10() 返回参数的以10为底的对数
LOG2() 返回参数的以2为底的对数
LOWER() 以小写形式返回参数
LPAD() 返回字符串参数,用指定的字符串左填充
LTRIM() 删除前导空格
MAKE_SET() 返回一组逗号分隔的字符串,这些字符串在位中具有相应的位
MAKEDATE() 从一年中的年月日创建日期
MAKETIME() 从小时,分钟,秒创建时间
MASTER_POS_WAIT() 阻塞直到从站读取并应用所有更新到指定位置
MATCH 执行全文搜索
MAX() 返回最大值
MBRContains() 一个几何的MBR是否包含另一个几何的MBR
MBRCoveredBy() 一个MBR是否被另一个覆盖
MBRCovers() 一个MBR是否涵盖另一个
MBRDisjoint() 两个几何的MBR是否不相交
MBREquals() 两个几何的MBR是否相等
MBRIntersects() 两个几何的MBR是否相交
MBROverlaps() 两个几何的MBR是否重叠
MBRTouches() 两个几何的MBR是否接触
MBRWithin() 一个几何的MBR是否在另一个几何的MBR内
MD5() 计算MD5校验和
MEMBER OF() (引入8.0.17) 如果第一个操作数与作为第二个操作数传递的JSON数组的任何元素匹配,则返回true(1),否则返回false(0)
MICROSECOND() 从参数返回微秒
MID() 返回从指定位置开始的子字符串
MIN() 返回最小值
MINUTE() 返回参数的分钟
MOD() 退还剩余
MONTH() 返回经过日期的月份
MONTHNAME() 返回月份名称
MultiLineString() 从LineString值构造MultiLineString
MultiPoint() 从Point值构造MultiPoint
MultiPolygon() 从多边形值构造MultiPolygon
NAME_CONST() 使列具有给定名称
NOT, ! 取反值
NOT BETWEEN ... AND ... 值是否不在值范围内
NOT IN() 一个值是否不在一组值内
NOT LIKE 否定简单模式匹配
NOT REGEXP 否REGEXP
NOW() 返回当前日期和时间
NTH_VALUE() 窗框第N行的自变量值
NTILE() 分区中当前行的存储桶号。
NULLIF() 如果expr1 = expr2,则返回NULL
OCT() 返回包含数字的八进制表示形式的字符串
OCTET_LENGTH() LENGTH()的同义词
OR, || 逻辑或
ORD() 返回参数最左边字符的字符代码
PERCENT_RANK() 百分比排名值
PERIOD_ADD() 在一年的月份中添加一个期间
PERIOD_DIFF() 返回期间之间的月数
PI() 返回pi的值
Point() 从坐标构造点
Polygon() 从LineString参数构造多边形
POSITION() LOCATE()的同义词
POW() 将自变量提高到指定的幂
POWER() 将自变量提高到指定的幂
PS_CURRENT_THREAD_ID() (引入8.0.16) 当前线程的性能架构线程ID
PS_THREAD_ID() (引入8.0.16) 给定线程的性能架构线程ID
QUARTER() 从日期参数返回季度
QUOTE() 转义要在SQL语句中使用的参数
RADIANS() 返回参数转换为弧度
RAND() 返回一个随机浮点值
RANDOM_BYTES() 返回一个随机字节向量
RANK() 当前行在其分区内的排名,带有空格
REGEXP 字符串是否匹配正则表达式
REGEXP_INSTR() 子串匹配正则表达式的起始索引
REGEXP_LIKE() 字符串是否匹配正则表达式
REGEXP_REPLACE() 替换匹配正则表达式的子字符串
REGEXP_SUBSTR() 返回匹配正则表达式的子字符串
RELEASE_ALL_LOCKS() 释放所有当前的命名锁
RELEASE_LOCK() 释放命名的锁
REPEAT() 重复字符串指定次数
REPLACE() 替换出现的指定字符串
REVERSE() 反转字符串中的字符
RIGHT() 返回指定的最右边字符
RLIKE 字符串是否匹配正则表达式
ROLES_GRAPHML() 返回表示内存角色子图的GraphML文档
ROUND() 围绕论点
ROW_COUNT() 更新的行数
ROW_NUMBER() 分区中当前行的数量
RPAD() 将字符串追加指定次数
RTRIM() 删除尾随空格
SCHEMA() DATABASE()的同义词
SEC_TO_TIME() 将秒转换为“ hh:mm:ss”格式
SECOND() 返回第二个(0-59)
SESSION_USER() USER()的同义词
SHA1(), SHA() 计算SHA-1 160位校验和
SHA2() 计算SHA-2校验和
SIGN() 返回参数的符号
SIN() 返回参数的正弦
SLEEP() 睡觉几秒钟
SOUNDEX() 返回soundex字符串
SOUNDS LIKE 比较声音
SPACE() 返回指定数量的字符串
SQRT() 返回参数的平方根
ST_Area() 返回多边形或多多边形区域
ST_AsBinary(), ST_AsWKB() 从内部几何格式转换为WKB
ST_AsGeoJSON() 从几何体生成GeoJSON对象
ST_AsText(), ST_AsWKT() 从内部几何格式转换为WKT
ST_Buffer() 返回距几何指定距离内的点的几何
ST_Buffer_Strategy() 产生ST_Buffer()的策略选项
ST_Centroid() 返回质心为点
ST_Contains() 一个几何是否包含另一个
ST_ConvexHull() 返回几何的凸包
ST_Crosses() 一个几何图形是否交叉
ST_Difference() 两个几何的返回点设置差
ST_Dimension() 几何尺寸
ST_Disjoint() 一个几何是否与另一个几何不相交
ST_Distance() 一种几何形状与另一种几何形状的距离
ST_Distance_Sphere() 两个几何之间的最小地球距离
ST_EndPoint() LineString的终点
ST_Envelope() 返回几何的MBR
ST_Equals() 一个几何是否等于另一个
ST_ExteriorRing() 返回多边形的外圈
ST_GeoHash() 产生一个哈希值
ST_GeomCollFromText(),ST_GeometryCollectionFromText(),ST_GeomCollFromTxt() 从WKT返回几何集合
ST_GeomCollFromWKB(), ST_GeometryCollectionFromWKB() 从WKB返回几何集合
ST_GeometryN() 从几何集合返回第N个几何
ST_GeometryType() 返回几何类型的名称
ST_GeomFromGeoJSON() 从GeoJSON对象生成几何
ST_GeomFromText(), ST_GeometryFromText() 从WKT返回几何
ST_GeomFromWKB(), ST_GeometryFromWKB() 从WKB返回几何
ST_InteriorRingN() 返回多边形的第N个内环
ST_Intersection() 返回点设置两个几何的交点
ST_Intersects() 一个几何是否相交
ST_IsClosed() 几何是否闭合且简单
ST_IsEmpty() 占位符功能
ST_IsSimple() 几何是否简单
ST_IsValid() 几何是否有效
ST_LatFromGeoHash() 从geohash值返回纬度
ST_Latitude() (引入8.0.12) 返回点的纬度
ST_Length() 返回LineString的长度
ST_LineFromText(), ST_LineStringFromText() 从WKT构造LineString
ST_LineFromWKB(), ST_LineStringFromWKB() 从WKB构造LineString
ST_LongFromGeoHash() 从geohash值返回经度
ST_Longitude() (引入8.0.12) 返回点经度
ST_MakeEnvelope() 围绕两点的矩形
ST_MLineFromText(), ST_MultiLineStringFromText() 从WKT构造MultiLineString
ST_MLineFromWKB(), ST_MultiLineStringFromWKB() 从WKB构造MultiLineString
ST_MPointFromText(), ST_MultiPointFromText() 从WKT构造MultiPoint
ST_MPointFromWKB(), ST_MultiPointFromWKB() 从WKB构造MultiPoint
ST_MPolyFromText(), ST_MultiPolygonFromText() 从WKT构造MultiPolygon
ST_MPolyFromWKB(), ST_MultiPolygonFromWKB() 从WKB构造MultiPolygon
ST_NumGeometries() 返回几何集合中的几何数量
ST_NumInteriorRing(), ST_NumInteriorRings() 返回多边形内环的数量
ST_NumPoints() 返回LineString中的点数
ST_Overlaps() 一个几何图形是否重叠
ST_PointFromGeoHash() 将geohash值转换为POINT值
ST_PointFromText() WKT的构造点
ST_PointFromWKB() 从WKB构造点
ST_PointN() 从LineString返回第N个点
ST_PolyFromText(), ST_PolygonFromText() 从WKT构造多边形
ST_PolyFromWKB(), ST_PolygonFromWKB() 从WKB构造多边形
ST_Simplify() 返回简化的几何
ST_SRID() 返回几何的空间参考系统ID
ST_StartPoint() LineString的起点
ST_SwapXY() 返回参数已交换X / Y坐标
ST_SymDifference() 返回点设置两个几何的对称差
ST_Touches() 一种几何是否接触另一种
ST_Transform() (引入8.0.13) 变换几何坐标
ST_Union() 返回点集两个几何的并集
ST_Validate() 返回经过验证的几何
ST_Within() 一个几何是否在另一个几何之内
ST_X() 返回点的X坐标
ST_Y() 返回点的Y坐标
STATEMENT_DIGEST() 计算语句摘要哈希值
STATEMENT_DIGEST_TEXT() 计算归一化语句摘要
STD() 返回人口标准差
STDDEV() 返回人口标准差
STDDEV_POP() 返回人口标准差
STDDEV_SAMP() 返回样品标准偏差
STR_TO_DATE() 将字符串转换为日期
STRCMP() 比较两个字符串
SUBDATE() 用三个参数调用时DATE_SUB()的同义词
SUBSTR() 返回指定的子字符串
SUBSTRING() 返回指定的子字符串
SUBSTRING_INDEX() 在指定的定界符出现次数之前从字符串返回子字符串
SUBTIME() 减去时间
SUM() 返回总和
SYSDATE() 返回函数执行的时间
SYSTEM_USER() USER()的同义词
TAN() 返回参数的正切值
TIME() 提取传递的表达式的时间部分
TIME_FORMAT() 格式化为时间
TIME_TO_SEC() 将参数转换为秒
TIMEDIFF() 减去时间
TIMESTAMP() 仅使用一个参数,此函数将返回date或datetime表达式;有两个参数,参数的总和
TIMESTAMPADD() 向日期时间表达式添加间隔
TIMESTAMPDIFF() 从日期时间表达式中减去一个间隔
TO_BASE64() 返回转换为以64为底的字符串的参数
TO_DAYS() 返回日期参数转换为天
TO_SECONDS() 返回从Year 0开始转换为秒的date或datetime参数
TRIM() 删除前导和尾随空格
TRUNCATE() 截断为指定的小数位数
UCASE() UPPER()的同义词
UNCOMPRESS() 解压字符串压缩
UNCOMPRESSED_LENGTH() 返回压缩前的字符串长度
UNHEX() 返回包含十六进制数字的字符串
UNIX_TIMESTAMP() 返回Unix时间戳
UpdateXML() 返回替换的XML片段
UPPER() 转换为大写
USER() 客户端提供的用户名和主机名
UTC_DATE() 返回当前UTC日期
UTC_TIME() 返回当前UTC时间
UTC_TIMESTAMP() 返回当前UTC日期和时间
UUID() 返回通用唯一标识符(UUID)
UUID_SHORT() 返回一个整数通用标识符
UUID_TO_BIN() 将字符串UUID转换为二进制
VALIDATE_PASSWORD_STRENGTH() 确定密码强度
VALUES() 定义在INSERT期间要使用的值
VAR_POP() 返回总体标准方差
VAR_SAMP() 返回样本方差
VARIANCE() 返回总体标准方差
VERSION() 返回一个指示MySQL服务器版本的字符串
WAIT_FOR_EXECUTED_GTID_SET() 等待直到给定的GTID在从站上执行。
WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS() (不推荐使用8.0.18) 使用WAIT_FOR_EXECUTED_GTID_SET()。
WEEK() 返回星期数
WEEKDAY() 返回工作日索引
WEEKOFYEAR() 返回日期的日历周(1-53)
WEIGHT_STRING() 返回字符串的权重字符串
XOR 逻辑异或
YEAR() 返回年份
YEARWEEK() 返回年和周