0

基本上,我有一个名为“电话”的表,其中包含超过 100,000 条记录。

在这个数据库中,我有如下数字:-

90123456789

91234567893

97126372319

基本上我想更新 Telephone.DB 并设置数字,因此只有当它以数字“9”开头时它才会删除第一个数字,因此结果将如下所示: -

0123456789

1234567893

7126372319

知道如何使用 MySQL 实现这一目标吗?

4

2 回答 2

4

假设数据类型是字符串类型,应该这样做;

UPDATE numbers 
SET number = SUBSTR(number, 2)
WHERE number LIKE '9%';

一个用于测试的 SQLfiddle

与往常一样,在您的生产数据库上运行 Internet 上随机人员的更新之前,请先测试一下自己:)

于 2013-06-05T08:50:59.170 回答
1

好的,这适用于 VARCHAR 列。您可以随时将值转换为 varchar:

SELECT CONCAT(REPLACE(SUBSTR(PHONEFIELD,1,1),9,''), SUBSTR(PHONEFIELD,2)) AS PHONEWITHOUTNINE FROM TABLENAME

检查它并告诉我它是否有效。

于 2013-06-05T08:50:18.223 回答