Поскольку результат возвращает более 1 строки, он не может INSERT INTO
таблицу @TEMP_ROW
. Я хочу, чтобы все строки были вставлены в таблицу @TEMP_ROW
. Могу ли я использовать цикл while? Если да, то как? Или любой другой метод?
DECLARE @TEMP_ROW TABLE
(
RSEQ INT IDENTITY(1,1),
ROWNO INT
)
INSERT INTO @TEMP_ROW (ROWNO)
VALUES ((SELECT RowNo
FROM R2
WHERE R2.ReqID = 802
AND R2.RowNo IN (SELECT DISTINCT RowNo
FROM R1
WHERE ReqID = 802
AND ((Fac IN ('ABC', 'ABCD')
AND NOM IN ('', '00', '0'))
OR (Fac ='AAA'))
AND ROWLED = 'L'))
Ошибка:
Подзапрос SQL Server возвратил более 1 значения. Это недопустимо, если подзапрос следует =,! =, <, <=,>,> =