sql server 的存储过程字符串怎么拼接的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql server 的存储过程字符串怎么拼接的相关的知识,希望对你有一定的参考价值。

你的问题,问的不是很清楚,你是想问,如果将查询结果拼接为字符串吗?

有两种办法,如果是拼接为一个字符串,可以用变量,如:

DECLARE @Names VARCHAR(MAX)
SELECT @Names=ISNULL(@Names+',','')+t.name FROM sys.tables AS t
SELECT @Names
--返回:spt_fallback_db,spt_fallback_dev,spt_fallback_usg,spt_monitor,MSreplication_options

如果是用SQL中,可以用xml path如:

SELECT STUFF(
(SELECT ','+t.name FROM sys.tables AS t FOR XML PATH(''))
,1,1,'')
--返回spt_fallback_db,spt_fallback_dev,spt_fallback_usg,spt_monitor,MSreplication_options

参考技术A 希望能帮到你:
create PROCEDURE proc1
AS
BEGIN
DECLARE @STR VARCHAR(8000)
SELECT @STR = ISNULL(@STR,'')+['字段名']+';' FROM 表名
insert into newTable('你要插入的字段名') values(@STR) --newTable 是另外一张表本回答被提问者采纳

sqlserver怎么获取表的字段名

参考技术A select * from syscolumns where id=object_id('表名')

本回答被提问者采纳
参考技术B 1、select * from sysobjects where xtype='u'
2、SELECT COLUMN_NAME,DATA_TYPE FROM INFORMATION_SCHEMA.columns WHERE TABLE_NAME=表名

以上是关于sql server 的存储过程字符串怎么拼接的的主要内容,如果未能解决你的问题,请参考以下文章

SQL SERVER 存储过程执行带输出参数的SQL语句拼接

sql存储过程中时分秒字符串怎么比较大小 如08:30:00 与13:00:00怎么比较

关于SQLserver 存储过程 如何切割一个字符串 转化为数组

Oracle [存储过程] 执行动态拼接SQL语句并返回结果??

sqlserver怎么获取表的字段名

使用批处理建立windows任务,执行sql server 存储过程或SQL语句