只有结合记录来代替属性。如:create table 表名(房号 int,扩展属性 varchar(100),值 varchar(100))
insert 表名 values(1,'区县','xx')
insert 表名 values(1,'地段','xx')
insert 表名 values(2,'区县','xx')
insert 表名 values(2,'地段','xx')
insert 表名 values(2,'楼宇名称','xx')--要显示的时候以上面为例:declare @sql varchar(8000)
set @sql = 'select 房号'
select @sql = @sql + ',max(case 扩展属性 when '''+扩展属性+''' then 值 end) ['+扩展属性+']'
  from (select distinct 扩展属性 from 表名) as a
select @sql = @sql+' from 表名 group by 房号'exec(@sql)
go
你仔细看看就会明白里面的道理,自己再根据需要改。