SQL数据清理

我想看看是否有人可以帮助我进行一些数据清理:

  1. 我需要确定连续至少有5个数字的列。列中还有其他数据
  2. 我需要确定连续有9个数字并且右边有“(”个空格的列。此组合还有其他数据

例如-XXXXXXXXX(

我将这种逻辑应用于案例表达。

评论
  • 女神
    女神 回复
      select *
      from your_table 
      where (
        your_column like '%11111$' 
            or your_column like '%22222%' 
            or your_column like '%33333%'
            or your_column like '%44444%'
            or your_column like '%55555%'
            or your_column like '%66666%'
            or your_column like '%77777%'
            or your_column like '%88888%'
            or your_column like '%99999%'
            or your_column like '%00000%'
       or your_column like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9] ('
    
  • 卟~怕
    卟~怕 回复

    The like operator can help you there:

    1. select * from yourtable where yourcloumn like '%[0-9][0-9][0-9][0-9][0-9]%'

    2. select * from yourtable where yourcloumn like '%([^0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9] (%'

    请记住:[0-9]表示一个数字字符,[^ 0-9]表示任何非数字字符