Mysql常用函数大全
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和s2TRIM(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时间戳tsHOUR(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 | SELECT FROM_UNIXTIME(UNIX_TIMESTAMP()); |
返回两个日期值之间的差值(月数):
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作为密钥解密加密字符串strENCRYPT(str,salt)
使用UNIXcrypt()函数,用关键词salt(一个可以惟一确定口令的字符串,就像钥匙一样)加密字符串strENCODE(str,key)
使用key作为密钥加密字符串str,调用ENCODE()的结果是一个二进制字符串,它以BLOB类型存储MD5()
计算字符串str的MD5校验和PASSWORD(str)
返回字符串str的加密版本,这个加密过程是不可逆转的,和UNIX密码加密过程使用不同的算法。SHA()
计算字符串str的安全散列算法(SHA)校验和
示例:
1 | SELECT ENCRYPT('root','salt');SELECT ENCODE('xufeng','key'); |
六、控制流函数
MySQL有4个函数是用来进行条件操作的,这些函数可以实现SQL的条件逻辑,允许开发者将一些应用程序业务逻辑转换到数据库后台。
MySQL控制流函数:
CASE WHEN[test1] THEN [result1]...ELSE [default] END
如果testN是真,则返回resultN,否则返回defaultCASE [test] WHEN[val1] THEN [result]...ELSE [default]END
如果test和valN相等,则返回resultN,否则返回defaultIF(test,t,f)
如果test是真,返回t;否则返回fIFNULL(arg1,arg2)
如果arg1不是空,返回arg1,否则返回arg2NULLIF(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 | CASE [expression to be evaluated] |
这里,第一个参数是要被判断的值或表达式,接下来的是一系列的WHEN-THEN
块,每一块的第一个参数指定要比较的值,如果为真,就返回结果。所有的WHEN-THEN块将以ELSE块结束,当END结束了所有外部的CASE块时,如果前面的每一个块都不匹配就会返回ELSE块指定的默认结果。如果没有指定ELSE块,而且所有的WHEN-THEN比较都不是真,MySQL将会返回NULL。
CASE函数还有另外一种句法,有时使用起来非常方便,如下:
1 | CASE WHEN [conditional test 1] THEN [result 1] |
这种条件下,返回的结果取决于相应的条件测试是否为真。
示例:
1 | mysql>SELECT CASE 'green' WHEN 'red' THEN 'stop' |
七、格式化函数
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 | SELECT FORMAT(34234.34323432,3); |
八、类型转化函数
为了进行数据类型转化,MySQL提供了CAST()
函数,它可以把一个值转化为指定的数据类型。类型有:BINARY
,CHAR
,DATE
,TIME
,DATETIME
,SIGNED
,UNSIGNED
示例:
1 | SELECT CAST (NOW() AS SIGNED INTEGER),CURDATE()+0; |
九、系统信息函数
DATABASE()
返回当前数据库名BENCHMARK(count,expr)
将表达式expr重复运行count次CONNECTION_ID()
返回当前客户的连接IDFOUND_ROWS()
返回最后一个SELECT查询进行检索的总行数USER()或SYSTEM_USER()
返回当前登陆用户名VERSION()
返回MySQL服务器的版本
示例:
1 | SELECT DATABASE(),VERSION(), USER(); |
十、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() 返回年和周