MySQL 函数和运算符参考
跳到导航
跳到搜索
下表列出了每个 SQL 函数和运算符,并提供了每个函数的简短说明:
Name | Description |
---|---|
& | 按位 AND |
> | 大于运算符 |
>> | 右移 |
>= | 大于或等于运算符 |
< | 小于运算符 |
<>, != | 不等于运算符 |
<< | 左移 |
<= | 小于或等于运算符 |
<=> | NULL 安全等于运算符 |
%, MOD | Modulo operator |
* | Multiplication operator |
+ | Addition operator |
- | Minus operator |
- | 更改参数的符号【???】 |
-> | 评估路径后从 JSON 列返回值;等效于 JSON_EXTRACT()。 |
->> | (5.7.13 引入) 评估路径并取消引用结果后,从 JSON 列返回值;等效于 JSON_UNQUOTE(JSON_EXTRACT())。 |
/ | 除法操作符 |
:= | 赋值 |
= | 分配一个值(作为SET语句的一部分或UPDATE语句的SET子句的一部分) |
= | Equal operator |
^ | 位运算“异或” |
ABS() | 返回绝对值 |
ACOS() | 返回反余弦 |
ADDDATE() | 将时间值(间隔)添加到日期值 |
ADDTIME() | Add time |
AES_DECRYPT() | 使用 AES 解密 |
AES_ENCRYPT() | 使用 AES 加密 |
AND, && | 逻辑“AND” |
ANY_VALUE() | 禁止拒绝 ONLY_FULL_GROUP_BY 值 |
Area() | (已废弃) 返回多边形或多多边形区域 |
ASCII() | 返回最左边字符的数值 |
ASIN() | 返回反正弦 |
ASYMMETRIC_DECRYPT() | 使用私钥或公钥解密密文 |
ASYMMETRIC_DERIVE() | 从非对称密钥派生对称密钥 |
ASYMMETRIC_ENCRYPT() | 使用私钥或公钥加密明文 |
ASYMMETRIC_SIGN() | 从摘要生成签名 |
ASYMMETRIC_VERIFY() | 验证签名匹配摘要 |
ATAN() | 返回反正切 |
ATAN2(), ATAN() | 返回两个参数的反正切 |
AVG() | 返回参数的平均值 |
BENCHMARK() | 重复执行一个表达式 |
BETWEEN ... AND ... | 值是否在值范围内 |
BIN() | 返回包含数字的二进制表示形式的字符串 |
BINARY | 将字符串转换为二进制字符串 |
BIT_AND() | 按位返回 AND |
BIT_COUNT() | 返回设置的位数 |
BIT_LENGTH() | 返回参数的长度(以位为单位) |
BIT_OR() | 按位返回 OR |
BIT_XOR() | 返回按位异或 |
CASE | Case operator【?】 |
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() | 从字符串生成摘要 |
CURDATE() | 返回当前日期 |
CURRENT_DATE(), CURRENT_DATE | CURDATE()的同义词 |
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() | 返回 table 列的默认值 |
DEGREES() | 将弧度转换为度 |
DIV | 整数除法 |
ELT() | 返回索引号处的字符串 |
EXP() | 自乘【???】 |
EXPORT_SET() | 返回一个字符串,这样对于值位中设置的每个位,您将获得一个打开的字符串,对于每个未设置的位,您将获得一个关闭的字符串 |
EXTRACT() | 提取部分日期 |
ExtractValue() | 使用 XPathtable 示法从 XML 字符串中提取值 |
FIELD() | 后续参数中第一个参数的索引(位置) |
FIND_IN_SET() | 第二个参数中第一个参数的索引(位置) |
FLOOR() | 返回不大于参数的最大整数值 |
FORMAT() | 返回格式化为指定的小数位数的数字 |
FOUND_ROWS() | 对于带有 LIMIT 子句的 SELECT,如果没有 LIMIT 子句,则将返回的行数 |
FROM_BASE64() | 解码 base64 编码的字符串并返回结果 |
FROM_DAYS() | 将天数转换为日期 |
FROM_UNIXTIME() | 将 Unix 时间戳记格式化为日期 |
GeometryCollection() | 从几何构造几何集合 |
GET_FORMAT() | 返回日期格式字符串 |
GET_LOCK() | 获取命名锁 |
GREATEST() | 返回最大参数 |
GROUP_CONCAT() | 返回串联的字符串 |
GTID_SUBSET() | 如果子集中的所有 GTID 也都已设置,则返回 true;否则,返回 true。否则为假。 |
GTID_SUBTRACT() | 返回集合中所有不在子集中的 GTID。 |
HEX() | 十进制或字符串值的十六进制表示 |
HOUR() | 提取时间 |
IF() | If/else 结构 |
IFNULL() | 空 if/else 构造 |
IN() | 一个值是否在一组值内 |
INET_ATON() | 返回 IP 地址的数值 |
INET_NTOA() | 从数值返回 IP 地址 |
INET6_ATON() | 返回 IPv6 地址的数值 |
INET6_NTOA() | 从数值返回 IPv6 地址 |
INSERT() | 在指定位置插入子字符串,最多指定字符数 |
INSTR() | 返回第一次出现的子串的索引 |
INTERVAL() | 返回小于第一个参数的参数的索引 |
IS | 针对布尔值测试值 |
IS_FREE_LOCK() | 命名锁是否免费 |
IS_IPV4() | 参数是否为 IPv4 地址 |
IS_IPV4_COMPAT() | 参数是否为 IPv4 兼容地址 |
IS_IPV4_MAPPED() | 参数是否为 IPv4Map 的地址 |
IS_IPV6() | 参数是否为 IPv6 地址 |
IS NOT | 针对布尔值测试值 |
IS NOT NULL | 非空值测试 |
IS NULL | 空值测试 |
IS_USED_LOCK() | 是否使用了命名锁;如果为 true,则返回连接标识符 |
ISNULL() | 测试参数是否为 NULL |
JSON_ARRAY() | 创建 JSON 数组 |
JSON_ARRAY_APPEND() | 将数据附加到 JSON 文档 |
JSON_ARRAY_INSERT() | 插入 JSON 数组 |
JSON_ARRAYAGG() | (5.7.22 引入) 将结果集作为单个 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_PATCH() | (5.7.22 引入) 合并 JSON 文档,替换重复键的值 |
JSON_MERGE_PRESERVE() | (5.7.22 引入) 合并 JSON 文档,保留重复的键 |
JSON_OBJECT() | 创建 JSON 对象 |
JSON_OBJECTAGG() | (5.7.22 引入) 将结果集作为单个 JSON 对象返回 |
JSON_PRETTY() | (5.7.22 引入) 以易于阅读的格式打印 JSON 文档 |
JSON_QUOTE() | 引用 JSON 文档 |
JSON_REMOVE() | 从 JSON 文档中删除数据 |
JSON_REPLACE() | 替换 JSON 文档中的值 |
JSON_SEARCH() | JSON 文档中值的路径 |
JSON_SET() | 将数据插入 JSON 文档 |
JSON_STORAGE_SIZE() | (5.7.22 引入) 用于存储 JSON 文档的二进制表示形式的空间 |
JSON_TYPE() | JSON 值类型 |
JSON_UNQUOTE() | 取消引用 JSON 值 |
JSON_VALID() | JSON 值是否有效 |
LAST_DAY | 返回参数的月份的最后一天 |
LAST_INSERT_ID() | 最后一个 INSERT 的 AUTOINCREMENT 列的值 |
LCASE() | LOWER()的同义词 |
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 校验和 |
MICROSECOND() | 从参数返回微秒 |
MID() | 返回从指定位置开始的子字符串 |
MIN() | 返回最小值 |
MINUTE() | 返回参数的分钟 |
MOD() | 取模 |
MONTH() | 返回经过日期的月份 |
MONTHNAME() | 返回月份名称 |
MultiLineString() | 从 LineString 值构造 MultiLineString |
MultiPoint() | 从 Point 值构造 MultiPoint |
MultiPolygon() | 从多边形值构造 MultiPolygon |
NAME_CONST() | 使列具有给定名称 |
NOT, ! | Negates value |
...之间和...之间 | 值是否不在值范围内 |
NOT IN() | 一个值是否不在一组值内 |
NOT LIKE | 否定简单模式匹配 |
NOT REGEXP | 否 REGEXP |
NOW() | 返回当前日期和时间 |
NULLIF() | 如果 expr1 = expr2,则返回 NULL |
OCT() | 返回包含数字的八进制表示形式的字符串 |
OCTET_LENGTH() | LENGTH()的同义词 |
OR, || | 逻辑“或” |
ORD() | 返回参数最左边字符的字符代码 |
PERIOD_ADD() | 在一年的月份中添加一个期间 |
PERIOD_DIFF() | 返回期间之间的月数 |
PI() | 返回 pi 的值 |
Point() | 从坐标构造点 |
Polygon() | 从 LineString 参数构造多边形 |
POSITION() | LOCATE()的同义词 |
POW() | 将自变量提高到指定的幂 |
POWER() | 将自变量提高到指定的幂 |
QUARTER() | 从日期参数返回季度 |
QUOTE() | 转义要在 SQL 语句中使用的参数 |
RADIANS() | 返回参数转换为弧度 |
RAND() | 返回一个随机浮点值 |
RANDOM_BYTES() | 返回一个随机字节向量 |
REGEXP | 字符串是否匹配正则表达式 |
RELEASE_ALL_LOCKS() | 释放所有当前命名的锁 |
RELEASE_LOCK() | 释放命名的锁 |
REPEAT() | 重复字符串指定次数 |
REPLACE() | 替换出现的指定字符串 |
REVERSE() | 反转字符串中的字符 |
RIGHT() | 返回指定的最右边字符 |
RLIKE | 字符串是否匹配正则表达式 |
ROUND() | 围绕论点 |
ROW_COUNT() | 更新的行数 |
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 | 比较 sounds【?】 |
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 的 endpoints |
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_Length() | 返回 LineString 的长度 |
ST_LineFromText(), ST_LineStringFromText() | 从 WKT 构造 LineString |
ST_LineFromWKB(), ST_LineStringFromWKB() | 从 WKB 构造 LineString |
ST_LongFromGeoHash() | 从 geohash 值返回经度 |
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_SymDifference() | 返回点设置两个几何的对称差 |
ST_Touches() | 一种几何是否接触另一种 |
ST_Union() | 返回点集两个几何的并集 |
ST_Validate() | 返回经过验证的几何 |
ST_Within() | 一个几何是否在另一个几何之内 |
ST_X() | 返回点的 X 坐标 |
ST_Y() | 返回点的 Y 坐标 |
STD() | 返回人口标准差 |
STDDEV() | 返回人口标准差 |
STDDEV_POP() | 返回人口标准差 |
STDDEV_SAMP() | 返回 sample 标准偏差 |
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() | Client 端提供的用户名和主机名 |
UTC_DATE() | 返回当前 UTC 日期 |
UTC_TIME() | 返回当前 UTC 时间 |
UTC_TIMESTAMP() | 返回当前 UTC 日期和时间 |
UUID() | 返回通用唯一标识符(UUID) |
UUID_SHORT() | 返回一个整数通用标识符 |
VALIDATE_PASSWORD_STRENGTH() | 确定密码强度 |
VALUES() | 定义在 INSERT 期间要使用的值 |
VAR_POP() | 返回总体标准方差 |
VAR_SAMP() | 返回 samples 方差 |
VARIANCE() | 返回总体标准方差 |
VERSION() | 返回指示 MySQL 服务器版本的字符串 |
WAIT_FOR_EXECUTED_GTID_SET() | await 给定的 GTID 在从站上执行。 |
WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS() | 使用WAIT_FOR_EXECUTED_GTID_SET()。 |
WEEK() | 返回星期数 |
WEEKDAY() | 返回工作日索引 |
WEEKOFYEAR() | 返回日期的 calendar 周(1-53) |
WEIGHT_STRING() | 返回字符串的权重字符串 |
XOR | 逻辑“异或” |
YEAR() | 返回年份 |
YEARWEEK() | 返回年和周 |
| | 位运算“或” |
~ | 位运算“取反” |