首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL -去掉以数字'9‘开头的第一个数字

SQL -去掉以数字'9‘开头的第一个数字
EN

Stack Overflow用户
提问于 2013-06-05 16:44:17
回答 2查看 108关注 0票数 0

基本上,我有一个名为‘电话’的表,里面有超过100,000+的记录。

在这个数据库中,我有这样的数字:

90123456789

91234567893

97126372319

基本上,我想更新Telephone.DB并设置数字,以便仅当第一个数字以数字'9‘开头时,它才会去掉第一个数字,因此结果将如下所示:

0123456789

1234567893

7126372319

你知道我如何使用MySQL实现这一点吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-05 16:50:59

如果数据类型是字符串类型,应该可以这样做;

代码语言:javascript
复制
UPDATE numbers 
SET number = SUBSTR(number, 2)
WHERE number LIKE '9%';

An SQLfiddle to test with

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

票数 4
EN

Stack Overflow用户

发布于 2013-06-05 16:50:18

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

代码语言:javascript
复制
SELECT CONCAT(REPLACE(SUBSTR(PHONEFIELD,1,1),9,''), SUBSTR(PHONEFIELD,2)) AS PHONEWITHOUTNINE FROM TABLENAME

检查一下,并告诉我它是否工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16935298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档