如何在 MySQL 中从特定位置开始的字符串中提取子字符串?
mysqlmysqli database
为此,您可以使用 mid() 函数。以下是语法 −
select mid(yourColumnName, yourPositionToStart, yourEndValue) as anyAliasName from yourTableName;
首先我们创建一个表 −
mysql> create table DemoTable -> ( -> Title text -> ); Query OK, 0 rows affected (0.64 sec)
使用 insert 命令在表中插入一些记录 −
mysql> insert into DemoTable values('My best framework is Spring and Hibernate'); Query OK, 1 row affected (0.21 sec)
使用 select 语句显示表中的所有记录 −
mysql> select *from DemoTable;
输出
+-------------------------------------------+ | Title | +-------------------------------------------+ | My best framework is Spring and Hibernate | +-------------------------------------------+ 1 row in set (0.00 sec)
这是在 MySQL 中获取字符串部分的查询。我们尝试从第 21 个字符开始获取 30 个字符。如果第 21 个字符之后的字符数不是 30,则仅显示剩余的字符 −
mysql> select mid(Title,21,30) as partofString from DemoTable;
输出
+-----------------------+ | partofString | +-----------------------+ | Spring and Hibernate | +-----------------------+ 1 row in set (0.00 sec)