日期:2014-05-18  浏览次数:20459 次

经典SQL语句
我现在遇到一难题:有一个数据表,但是我只知道一个字段的名称。现在我想查询数据库里面的除去这个字段的所有数据!请问怎么办?

谢谢各位!!

------解决方案--------------------
declare @sql varchar(2000)
set @sql = ' '
select @sql = @sql + ', ' + name from syscolumns where id = object_id( '表名 ') and name <> '字段名 '
select stuff(@sql,1,1, ' ')
exec( 'select '+@sql+ ' from 表名 ')
------解决方案--------------------
楼上很强,不过有一个小小的错误

select @sql=stuff(@sql,1,1, ' ')

------解决方案--------------------
--正解如下
declare @sql varchar(2000)
set @sql = ' '
select @sql = @sql + ', ' + name from syscolumns where id = object_id( '表名 ') and name <> '字段名 '
set @sql=stuff(@sql,1,1, ' ')
exec( 'select '+@sql+ ' from 表名 ')

------解决方案--------------------
呵呵,是写错了.

declare @sql varchar(2000)
set @sql = ' '
select @sql = @sql + ', ' + name from syscolumns where id = object_id( '表名 ') and name <> '字段名 '
select @sql = stuff(@sql,1,1, ' ')
exec( 'select '+@sql+ ' from 表名 ')