SQL 怎么写存储过程?

Account007 2013-01-15 05:09:46


SELECT * INTO #TEMP1
FROM (
SELECT 1 AS 'CODE',1 AS 'Line','A' AS 'NAME' UNION ALL
SELECT 1 AS 'CODE',2 AS 'Line','B' AS 'NAME' UNION ALL
SELECT 2 AS 'CODE',1 AS 'Line','C' AS 'NAME' UNION ALL
SELECT 2 AS 'CODE',3 AS 'Line','D' AS 'NAME'
) T0


/*执行结果*/
SELECT A.CODE,STUFF((SELECT ','+T0.Name FROM #TEMP1 T0

WHERE T0.CODE=A.CODE for xml path('')),1,1,'') AS CODE

FROM #TEMP1 A

GROUP BY A.CODE


想把执行结果转为存储过程的写法,
目的是想执行存储过程时只要传参数,表名,字段名,合并字段名就能得到上像上面执行结果的值。

要怎么做呢??

...全文
323 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
發糞塗牆 2013-01-15
  • 打赏
  • 举报
回复
引用 1 楼 qianjin036a 的回复:
这种想法不好. 通用的,效率一般都不好. 你可以对每一个查询单独编一个存储过程,为什么要合起来呢?
晴天大大,把押宝的给结了吧。 楼主: #TEMP1 这个表按道理应该从别的实体表通过一定方式生成的,为啥还要传表名呢?
Account007 2013-01-15
  • 打赏
  • 举报
回复
表多的情况下,这样对不同表,要合并表里值,就调用存储过程就好了,比较方便嘛
-晴天 2013-01-15
  • 打赏
  • 举报
回复
这种想法不好. 通用的,效率一般都不好. 你可以对每一个查询单独编一个存储过程,为什么要合起来呢?

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧