注册 登录
编程论坛 SQL Server论坛

临时表列名有重复 希望进行判断

soosii 发布于 2012-04-27 10:27, 464 次点击
我在临时表的列名是由表的三个字段合在一起的 但是会出现重复  我希望重复的列名会合成一个 然后数字是MTM_JE的综合
 if
            Set @SQL='Alter Table '+@Temp+' ADD ['+@MTM_RANK+'$'+@MTM_STY+'$'+@MTM_GFNPDES+'] float default 0'
            Exec (@SQL)
            If @YSSWZ<>''  ---以试算为准
            BEGIN
                Set @SQL='Update '+@Temp+' Set ['+@MTM_RANK+'$'+@MTM_STY+'$'+@MTM_GFNPDES+']=MTM_JE From MTM WHERE 1=1'
            END
            ELSE
            BEGIN
                Set @SQL='Update '+@Temp+' Set ['+@MTM_RANK+'$'+@MTM_STY+'$'+@MTM_GFNPDES+']=MTM_JE From MVM WHERE 1=1'
            END
3 回复
#2
soosii2012-04-27 14:17
没人吗
#3
soosii2012-04-27 20:41
那能不能写个列名存在 不再写进去的语句
#4
netlin2012-05-02 13:08
在修改数据表增加字段时,先判断表中是否存在要增加的字段,
这样,就不会出现重复的问题了!
判断表中字段是否存在,可以参考下面的例子:
select syscolumns.name AS ColumnName,systypes.name AS TypeName,syscolumns.length as length
 from syscolumns,sysobjects,systypes where syscolumns.id=sysobjects.id and syscolumns.xtype= systypes.xtype  
 and systypes.name<>'sysname' and sysobjects.name= '表名' order by syscolumns.colid
1