SQL将一个表中的所有列中含有‘0.00’的替换为‘NULL’
不想在每列依次执行UPDATE,最好有一句可以实现的。

解决方案 »

  1.   

    没必要更新吧,如果需要0.00->null,可以在查询或视图或客户端程序中去处理
      

  2.   

    有人还如此喜欢NULL,搞来搞去的,没必要
      

  3.   

    Set @charenter=char(13)+char(10)
    Set @sql=''
    Set @TableName='tablename'Select 
    @sql=@sql+' Update '+@TableName+' Set '+D.name+'=NULL Where '+D.name+'=0.00'+@charenter
    From Sysobjects M
    Left Join SysColumns D On M.id=d.id
    Left Join Systypes C On D.xtype=C.xtype
    Where C.name In ('numeric',..)---加入数据类型
    And M.name=@TableName
    Exec(@sql)