必须声明标量变量错误 [英] Must declare scalar variable error

查看:110
本文介绍了必须声明标量变量错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


我得到必须声明标量变量错误



我尝试过:



  DECLARE   @ Table1  < span class =code-keyword>表(ID  INT ,值 INT 
INSERT INTO @ Table1 < span class =code-keyword> VALUES ( 1 100 ),(< span class =code-digit> 1 , 200 ),( 1 ,< span class =code-digit> 300 ),( 1 400

SELECT ID
,STUFF(( SELECT ' ,' + CAST(值 AS VARCHAR 10 ))[ text ()]
FROM @ Table1
WHERE ID = 1

解决方案

不清楚您的查询尝试做什么,看起来不完整。我猜这是你想要做的。如果不是这样,请告诉我们。



  DECLARE   @ Table1   TABLE (ID  INT ,值 INT 

INSERT INTO @ Table1
VALUES 1 100
,( 1 200
,( 1 300
,( 1 400
,( 2 300
,( 2 400

SELECT DISTINCT ID
,STUFF((
SELECT ' ,' + CAST(ST1.value AS VARCHAR 10 )) AS [ text ()]
FROM @ Table1 st1
WHERE st1.id = st2.ID
FOR XML PATH(' '
), 1 2 ' ')test
FROM @ Table1 ST2
WHERE ST2。 ID = 1



输出:

 ID测试
1 100,200,300,400


Hi I am getting Must Declare Scalar variable Error

What I have tried:

DECLARE @Table1 Table (ID INT, Value INT)
INSERT INTO @Table1  VALUES (1,100),(1,200),(1,300),(1,400)

SELECT  ID
       ,STUFF((SELECT ', ' + CAST(Value AS VARCHAR(10)) [text()]
         FROM @Table1 
         WHERE ID = 1

解决方案

Not clear what your query is trying to do, look like it is incomplete. I'm guessing this is what you trying to do. Let us know if that not the case.

DECLARE @Table1 TABLE (ID INT,Value INT)

INSERT INTO @Table1
VALUES (1,100)
	,(1,200)
	,(1,300)
	,(1,400)
	,(2,300)
	,(2,400)

SELECT DISTINCT ID
	,STUFF((
			SELECT ', ' + CAST(ST1.value AS VARCHAR(10)) AS [text()]
			FROM @Table1 st1
			WHERE st1.id = st2.ID
			FOR XML PATH('')
			), 1, 2, '') test
FROM @Table1 ST2
WHERE ST2.ID = 1


Output:

ID	test
1	100, 200, 300, 400


这篇关于必须声明标量变量错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆