MariaDB MID() 函数使用指南

在 MariaDB 中, MID() 是一个内置的字符串函数,从一个字符串的指定位置开始提取一个指定长度的子串并返回。

MariaDB MID() 语法

这里是 MariaDB MID() 函数的语法:

MID(str, pos[, len])

MID(str, pos, len) 等同于 SUBSTRING(str, pos, len)SUBSTR(str, pos, len) 函数。

参数

str
必需的。从中提取子字符串的原字符串。
pos
必需的。开始提取的位置。它可以是正数或者负数。如果是正数,则从字符串的开头开始提取子字符串。如果是负数,则从字符串的结尾提取子字符串。
len
可选的。子字符串的长度(字符数)。如果不指定,则提取到原字符串的结尾。

如果您使用了错误的参数, MariaDB 将报告错误: ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ‘)’ at line 1。

返回值

MariaDB MID() 函数从原字符串提取的子字符串。

如果 pos0 或者超过原字符串的长度时, MID() 函数将返回空串 ''

如果参数为 NULLMID() 函数将返回 NULL

MariaDB MID() 示例

提取到结尾

下面的语句展示了如何使用 MariaDB MID() 函数从 'Hello' 中提取从第三个字符到结尾的子串:

SELECT MID('Hello', 3);

输出:

+-----------------+
| MID('Hello', 3) |
+-----------------+
| llo             |
+-----------------+

提取指定长度的子串

下面的语句展示了如何使用 MariaDB MID() 函数从指定的位置提取指定长度的子字符串:

SELECT MID('Hello', 1, 2);

输出:

+--------------------+
| MID('Hello', 1, 2) |
+--------------------+
| He                 |
+--------------------+

在本示例中, MID('Hello', 1, 2) 返回从第一个字符开始的长度位 2 的子字符串,因此返回了 He

其他示例

本示例展示了 MariaDB MID() 函数的各种用法:

SELECT
    MID('Hello', 1, 2),
    MID('Hello', 2, 2),
    MID('Hello', 1),
    MID('Hello', 1, 8),
    MID('Hello', -1, 2),
    MID('Hello', 8, 2),
    MID('Hello', 0, 2),
    MID('Hello', 0),
    MID(NULL, 1, 1)\G

输出:

*************************** 1. row ***************************
 MID('Hello', 1, 2): He
 MID('Hello', 2, 2): el
    MID('Hello', 1): Hello
 MID('Hello', 1, 8): Hello
MID('Hello', -1, 2): o
 MID('Hello', 8, 2):
 MID('Hello', 0, 2):
    MID('Hello', 0):
    MID(NULL, 1, 1): NULL

结论

MariaDB MID() 函数从一个字符串的指定位置开始提取一个指定长度的子串并返回。