SQL 函数和运算符参考

SQL函数和运算符参考😂

下表列出了每个SQL函数和运算符,并提供了每个函数的简短说明。

名称 描述
& 按位与
> 大于运算符
>> 右移
>= 大于或等于运算符
< 少于运算符
<>!= 不等于运算符
<< 左移
<= 小于或等于运算符
<=> 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() 返回反正弦
ATAN() 返回反正切
ATAN2()ATAN() 返回两个参数的反正切
AVG() 返回参数的平均值
BENCHMARK() 重复执行一个表达式
BETWEEN ... AND ... 值是否在值范围内
BIN() 返回包含数字的二进制表示形式的字符串
BIN_TO_UUID() 将二进制UUID转换为字符串
BINARY 将字符串转换为二进制字符串
BIT_AND() 按位返回AND
BIT_COUNT() 返回设置的位数
BIT_LENGTH() 返回参数的长度(以位为单位)
BIT_OR() 按位返回OR
BIT_XOR() 返回按位异或
CAN_ACCESS_COLUMN() 仅供内部使用
CAN_ACCESS_DATABASE() 仅供内部使用
CAN_ACCESS_TABLE() 仅供内部使用
CAN_ACCESS_USER() (引入8.0.22) 仅供内部使用
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() 计算循环冗余校验值
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值是否有效
JSON_VALUE() (引入8.0.21) 在提供的路径所指向的位置从JSON文档中提取值; 以VARCHAR(512)或指定的类型返回此值
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()的同义词
LOCALTIMESTAMPLOCALTIMESTAMP() 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() 仅使用一个参数,此函数将返回日期或日期时间表达式。 有两个参数,参数的总和
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() 返回年和周
| 按位或
~ 按位反转

Post Author: admin