gpt4 book ai didi

mysql - 如何剥离和替换mysql中的值

转载 作者:行者123 更新时间:2023-11-30 22:15:07 28 4
gpt4 key购买 nike

我有大约200,000 strip 有电话号码的数据记录,但数字不一致。

例如,有些可能是 10 位数字(开头缺少 0),有些中间有空格,有些中间有一个“-”,有些以“+44”而不是 0 开头。

在 mySQL 中有没有一种方法可以在一个查询中对所有这些进行条件处理并清理数据?

最佳答案

没有示例数据和示例输出,这纯粹是推测,假设您希望输出格式为 01234567891

结合使用 LENGTHREPLACE' ANDLEFT` 函数来解决您强调的 4 个问题:

  1. 开头缺少 0。
  2. 字符串中的空格。
  3. - 在字符串中。
  4. +44 而不是 0。

SELECT CASE WHEN LENGTH(REPLACE(REPLACE(numberfield, '-', ''), ' ', '')) = 10 
THEN CONCAT('0', REPLACE(REPLACE(numberfield, '-', ''), ' ', ''))
WHEN LEFT(REPLACE(REPLACE(numberfield, '-', ''), ' ', ''), 3) = '+44'
THEN REPLACE(REPLACE(REPLACE(numberfield, '-', ''), ' ', ''), '+44', '0'
END AS Cleannumber
FROM yourtable

关于mysql - 如何剥离和替换mysql中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38607740/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com