如何使用 MySQL REGEXP 从邮政编码字段中删除 -XXX?
mysqlmysqli database更新于 2024/4/4 9:18:00
实现此目的的最简单方法是使用 MySQL SUBSTRING_INDEX() 函数。让我们首先创建一个表 −
mysql> create table DemoTable ( ZipCode varchar(50) ); Query OK, 0 rows affected (2.02 sec)
使用 insert 命令在表中插入一些记录 −
mysql> insert into DemoTable values('52533-909'); Query OK, 1 row affected (0.23 sec) mysql> insert into DemoTable values('12345-674'); Query OK, 1 row affected (0.27 sec) mysql> insert into DemoTable values('89893-890'); Query OK, 1 row affected (0.21 sec) mysql> insert into DemoTable values('AAAAA-783'); Query OK, 1 row affected (0.25 sec)
使用 select 语句显示表中的所有记录 −
mysql> select *from DemoTable;
这将产生以下输出 −
+-----------+ | ZipCode | +-----------+ | 52533-909 | | 12345-674 | | 89893-890 | | AAAAA-783 | +-----------+ 4 rows in set (0.00 sec)
以下是使用 substring_index() 从 zipcode 中删除 -XXX 的查询 −
mysql> update DemoTable set ZipCode=substring_index(ZipCode, '-', 1); Query OK, 4 rows affected (0.44 sec) Rows matched : 4 Changed : 4 Warnings : 0
让我们再次检查表记录 −
mysql> select *from DemoTable;
这将产生以下输出 −
+---------+ | ZipCode | +---------+ | 52533 | | 12345 | | 89893 | | AAAAA | +---------+ 4 rows in set (0.00 sec)