create proc vie_OrderWareAttrib2
as
declare @s varchar(8000)
set @s=''
select @s =@s+ ','''+ordattrib_name+'''=(case when ordattrib_name='''+ordattrib_name+''' then attrib_value end )'
from (select distinct ordattrib_name from vie_OrderWareAttrib) a
set @s='select order_id,ware_numid,ware_code '+@s+' from vie_OrderWareAttrib group by order_id,ware_numid,ware_code,ordattrib_name,attrib_value'
exec(@s)
as
declare @s varchar(8000)
set @s=''
select @s =@s+ ','''+ordattrib_name+'''=(case when ordattrib_name='''+ordattrib_name+''' then attrib_value end )'
from (select distinct ordattrib_name from vie_OrderWareAttrib) a
set @s='select order_id,ware_numid,ware_code '+@s+' from vie_OrderWareAttrib group by order_id,ware_numid,ware_code,ordattrib_name,attrib_value'
exec(@s)
解决方案 »
- 还是关于远程数据库的问题,在线等,万分火急
- 如何检测sql server的性能, 是否有自带的功能?
- 请问如何删除一张表中的第一条数据??
- 请问下这样设计的数据库是不是数据字典的意思!
- 表有2列,第2列是数字,要求select中+3列,根据第二列的数字改变这三列,返回结果集,如结果集id=1,price=12,小于5=null,5-10=null,大于12=12
- 求一个sql2000的函数!
- ACCESS中是不是不能用游标?
- 求一个简单的触发器
- 请哪位高手看看我这句触发器里的语句错在哪里,请给小弟指点迷津,谢谢
- 请问SELECT 语句有查询第I到第J条记录的语法的吗?
- 请问存储过程中的if语句该如何写?
- 关于like 的简单问题,在线等待!
set @s='select * from tablename'
exec(@s)
这种方式执行出来的结果集提取出来而不光只是输出显示
我查了很多好像用自定义函数或存储过程来实现,但是有一个很大的问题就是我这个tablename是一个动态的表,里面的列是不固定的,我无法预先定义临时表或表变量的结构,请问DBA们能有什么好办法吗!?
set @s='select * into ##T from tablename'
exec(@s)
select * from ##T
这是tablename的数据就装载到全局临时表##T中了,就可以想用其他表一样使用##T了