MySQL - 字符串函数
MySQL 字符串函数和运算符
Section titled “MySQL 字符串函数和运算符”MySQL 字符串函数
Section titled “MySQL 字符串函数”MySQL 提供了一套丰富的内置函数,用于操作字符串值。此列表作为常见字符串函数和运算符的全面参考。
| 序号 | 名称与描述 |
|---|---|
| 1 | ASCII(str) 返回字符串 str 中最左侧字符的数字 ASCII 码。 |
| 2 | BIN(N) 返回整数 N 的二进制值的字符串表示形式。 |
| 3 | BIT_LENGTH(str) 返回字符串 str 的比特长度。 |
| 4 | CHAR(N,… [USING charset]) 根据作为整数参数给定的 ASCII/Unicode 码点构造一个字符串。 |
| 5 | CHAR_LENGTH(str) 返回字符串 str 的字符长度。对于 UTF-8 等多字节字符集,这是正确使用的函数。 |
| 6 | CHARACTER_LENGTH(str)CHAR_LENGTH() 的同义词。 |
| 7 | CONCAT(str1, str2,…) 返回连接参数后形成的字符串。如果任何参数为 NULL 则返回 NULL。 |
| 8 | CONCAT_WS(separator, str1, str2,…) 带分隔符拼接。返回一个连接的字符串,其中参数由 separator 分隔。跳过分隔符后的任何 NULL 参数。 |
| 9 | ELT(N, str1, str2, str3,…) 返回字符串列表中的第 N 个元素。例如, ELT(2, 'a', 'b', 'c') 返回 ‘b’。 |
| 10 | EXPORT_SET(bits, on, off[, separator[, number_of_bits]]) 返回一个字符串,其中对于 bits 中的每个已设置的位,您会得到 on 字符串;对于每个未设置的位,您会得到 off 字符串。 |
| 11 | FIELD(str, str1, str2,…) 返回 str 在字符串列表 str1, str2, ... 中的基于 1 的索引。如果未找到 str 则返回 0。 |
| 12 | FIND_IN_SET(str, str_list) 返回 str 在 str_list(逗号分隔的字符串)中的基于 1 的索引。如果未找到则返回 0。 |
| 13 | FROM_BASE64(str) 解码 base-64 编码的字符串,并以二进制字符串形式返回结果。 |
| 14 | INSERT(str, pos, len, newstr) 将字符串 str 中从位置 pos 开始、长度为 len 个字符的子字符串替换为 newstr。 |
| 15 | INSTR(str, substr) 返回 substr 在 str 中第一次出现的基于 1 的起始位置。如果未找到则返回 0。在默认排序规则中不区分大小写。 |
| 16 | LCASE(str)LOWER() 的同义词。 |
| 17 | LEFT(str, len) 从字符串 str 中返回最左边的 len 个字符。 |
| 18 | LENGTH(str) 返回字符串 str 的字节长度。对于多字节字符集,这可能不等于字符数。使用 CHAR_LENGTH() 获取字符计数。 |
| 19 | LOAD_FILE(file_name) 读取文件并将文件内容作为字符串返回。需要 FILE 权限。 |
| 20 | LOCATE(substr, str[, pos]) 返回 substr 在 str 中第一次出现的基于 1 的位置,可选地从 pos 位置开始搜索。POSITION() 的同义词。 |
| 21 | LOWER(str) 根据当前字符集映射,返回所有字符都已转换为小写的字符串 str。 |
| 22 | LPAD(str, len, padstr) 用字符串 padstr 左填充字符串 str,直到 str 的长度达到 len 个字符。 |
| 23 | LTRIM(str) 移除字符串 str 的前导空白字符。 |
| 24 | MAKE_SET(bits, str1, str2,…) 返回一个集合值(包含逗号分隔子字符串的字符串),该集合值由在 bits 中相应位已设置的字符串组成。 |
| 25 | MID(str, pos, len)SUBSTRING(str, pos, len) 的同义词。 |
| 26 | OCT(N) 返回整数 N 的八进制值的字符串表示形式。 |
| 27 | OCTET_LENGTH(str)LENGTH() 的同义词。 |
| 28 | ORD(str) 如果 str 的最左侧字符是单字节字符,则返回其 ASCII 码。对于多字节字符,它返回 Unicode 码点。 |
| 29 | POSITION(substr IN str)LOCATE(substr, str) 的同义词。 |
| 30 | QUOTE(str) 生成一个可作为 SQL 语句中正确转义的数据值的结果。将字符串用单引号括起来并转义反斜杠和单引号。 |
| 31 | REPEAT(str, count) 返回由字符串 str 重复 count 次组成的字符串。 |
| 32 | REPLACE(str, from_str, to_str) 将字符串 str 中所有出现的子字符串 from_str 替换为 to_str。 |
| 33 | REVERSE(str) 反转字符串 str 中字符的顺序。 |
| 34 | RIGHT(str, len) 从字符串 str 中返回最右边的 len 个字符。 |
| 35 | RPAD(str, len, padstr) 用字符串 padstr 右填充字符串 str,直到 str 的长度达到 len 个字符。 |
| 36 | RTRIM(str) 移除字符串 str 的尾随空白字符。 |
| 37 | SOUNDEX(str) 将 str 的发音表示形式作为 soundex 字符串返回。用于比较发音相似但拼写不同的字符串。 |
| 38 | SPACE(N) 返回由 N 个空格字符组成的字符串。 |
| 39 | STRCMP(expr1, expr2) 比较两个字符串。如果它们相同则返回 0,如果第一个参数小于第二个则返回 -1,否则返回 1。 |
| 40 | SUBSTR(str, pos[, len])SUBSTRING() 的同义词。 |
| 41 | SUBSTRING(str, pos[, len]) 从字符串 str 中返回一个长度为 len 的子字符串,从位置 pos 开始。如果省略 len,则返回字符串的其余部分。 |
| 42 | SUBSTRING_INDEX(str, delim, count) 从 str 中返回一个子字符串,直到分隔符 delim 出现 count 次。如果 count 为正数,则从左侧返回最终子字符串。如果为负数,则从右侧返回。 |
| 43 | TO_BASE64(str) 将字符串编码为其 base-64 表示形式。 |
| 44 | TRIM([BOTH | LEADING | TRAILING] [remstr] FROM str) 移除字符串的前导和/或尾随字符。默认情况下,它会移除两端的空白。是 LTRIM 和 RTRIM 更强大的版本。 |
| 45 | UCASE(str)UPPER() 的同义词。 |
| 46 | UNHEX(str) 执行 HEX() 的逆操作。将参数中的每对十六进制数字解释为一个数字,并将其转换为其所代表的字符。 |
| 47 | UPPER(str) 根据当前字符集映射,返回所有字符都已转换为大写的字符串 str。 |
| 48 | WEIGHT_STRING(str) 返回输入字符串的权重字符串。这代表了字符串的比较和排序值。 |
| 49 | MATCH (col1, col2,…) AGAINST (expr) [运算符] 用于全文搜索。必须在具有 FULLTEXT 索引的列上使用。 |
| 50 | REGEXP [运算符] REGEXP_LIKE() 函数的同义词。用于检查字符串是否匹配正则表达式模式。 |
| 51 | SOUNDS LIKE [运算符] 比较两个字符串的 soundex 值。 expr1 SOUNDS LIKE expr2 等同于 SOUNDEX(expr1) = SOUNDEX(expr2)。 |