如何获取 MySQL 中某个字符最后一次出现位置之前的所有内容?


你可以使用以下语法。以下是语法 −

update yourTableName
set yourColumnName=REVERSE(SUBSTRING(REVERSE(yourColumnName),
INSTR(REVERSE(yourColumnName), '.')));

让我们先创建一个表格 −

mysql> create table DemoTable
-> (
-> Words text
-> );
Query OK, 0 rows affected (0.51 sec)

使用 insert 命令向表格中插入一些记录 −

mysql> insert into DemoTable values('Value1. Value2 .Value3.Value4.Value5');
Query OK, 1 row affected (0.22 sec)

使用 select 语句从表格中显示所有记录 −

mysql> select *from DemoTable;

输出

它将产生以下输出 −

+--------------------------------------+
| Words                                |
+--------------------------------------+
| Value1. Value2 .Value3.Value4.Value5 |
+--------------------------------------+
1 row in set (0.00 sec)

以下是在 MySQL 中获取字符最后一次出现之前所有内容的查询 −

mysql> update DemoTable
   -> set Words=REVERSE(SUBSTRING(REVERSE(Words), INSTR(REVERSE(Words),'.')));
Query OK, 1 row affected (0.13 sec)
Rows matched: 1 Changed: 1 Warnings: 0

让我们再次检查表格记录 −

mysql> select *from DemoTable;

输出

它将产生以下输出 −

+--------------------------------+
| Words                          |
+--------------------------------+
| Value1. Value2 .Value3.Value4. |
+--------------------------------+
1 row in set (0.00 sec)

更新于:30-6-2020

562 次浏览

开启你的 职业生涯

完成课程即可获得认证

入门
广告