本帖最后由 microzdh 于 2009-07-23 11:16:28 编辑

解决方案 »

  1.   


    --13697707720           --正确格式为 13697707720
    -- 在最后,直接去掉
    update tab set dianhua = left(dianhua,len(dianhua)- len(' '))
    where dianhua like '% '--0913 2948215            --正确格式为 0913-2948215 
    --在中间,替换成 '-',因为最后的 已经在上一步替换掉了,所以这里不用考虑update tab set dianhua = replace(dianhua,' ','')
    where dianhua like '%_ _%'
    --0485--8569423           --正确格式为 0485--8569423
    --同第一步的情况--0000000000                  --这个是无较格式,直接用null填充 update tab set dianhua = null
    where dianhua = '0000000000'
    --429080493 15916212414   --这个是无较格式,直接用null填充 
    --这个为什么是无效格式呢?
      

  2.   

    非常感谢各位的回复!!!
    因为数据库是以前的人设计的,在程序及sql的结构设计上有问题,
    现在将旧数据移到新的平台,烦啊!!
      

  3.   

    找出规律就找出解决方法,从以上可以得出:
    当 在结尾的时候就转化为空
    当 在中间出现的时候就转化为--
    当没有 的时候,就是无效的!