Member 12605293 Ответов: 1

Необходимо объявить скалярную переменную error


Привет я получаю должен объявить скалярную переменную Error

Что я уже пробовал:

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

Richard MacCutchan

ГМ, где-то в приведенном выше коде.

Member 12605293

Привет сэр
Что не так в моем коде

1 Ответов

Рейтинг:
7

Bryian Tan

Не ясно, что ваш запрос пытается сделать, похоже, что он неполон. Я предполагаю, что это то, что вы пытаетесь сделать. Дайте нам знать, если это не так.

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

Выход:
ID	test
1	100, 200, 300, 400


Member 12605293

Привет Брайан
Могу ли я попробовать этот запрос в своей БД???

Bryian Tan

Конечно. Вы используете MS SQL Server?

Member 12605293

Да, Брайан..У меня такая же ошибка

Member 12605293

Привет Брайан,
Это хорошо работает