当前位置: 代码迷 >> Sql Server >> 怎么将全表中的 null值或空值,全部替换成 ‘NN’
  详细解决方案

怎么将全表中的 null值或空值,全部替换成 ‘NN’

热度:39   发布时间:2016-04-27 11:04:51.0
如何将全表中的 null值或空值,全部替换成 ‘NN’
全表300多列,800多行。
其中40%为空值或null。

请教如何用语句把所有空值或null全部替换成NN.

谢谢

------解决方案--------------------
确定把全部空值或NULL都替换成NN

SQL code
update tb set col='NN' where col='' or col is NULL
------解决方案--------------------
SQL code
declare @colname  varchar(100),        @sql      varchar(3000)set @sql=''select  @colname=name from syscolumns where id=object_id('tb') set @sql='update tb [email protected]+''+'=NN'+'where col='' or col is NULL'exec (@sql)
------解决方案--------------------
SQL code
declare @colname  varchar(100),        @sql      varchar(8000)set @sql=''declare cur_tbcolumn cursorforselect  name from syscolumns where id=object_id('tb') fetch next from cur_tbcolumnwhile @@fetch_status=0beginset @sql='update tb set [email protected]+'=''NN'''+'where [email protected]+'='''' or [email protected]+' is NULL'exec (@sql)set @sql=''fetch next from cur_tbcolumnend
------解决方案--------------------
SQL code
declare @colname  varchar(100),        @sql      varchar(8000)set @sql=''declare cur_tbcolumn cursorforselect  name from syscolumns where id=object_id('tb') OPEN cur_tbcolumnfetch next from cur_tbcolumnwhile @@fetch_status=0beginset @sql='update tb set [email protected]+'=''NN'''+'where [email protected]+'='''' or [email protected]+' is NULL'exec (@sql)set @sql=''fetch next from cur_tbcolumnend
  相关解决方案