Динамический SQL WHILE приводит ко многим winodws в области результатов в студии управления
У меня такой запрос:
declare @ProjectID int
declare @Keyword nvarchar(255)
declare @SEID int
select distinct
@ProjectID=Project_Id,
@Keyword=keyword,
@SEID=SE_Id
from [RL].[SearchMetrics_ProjectKeyword] --it returns 120 rows
while @ProjectID is not null
begin
SELECT *
FROM Table 1
where ID = @ProjectID
and Keyword = @Keyword
and SEID = @SEID
end
тогда у меня есть 120 окон результата в области результатов. Но хотелось бы, чтобы все результаты были только в одном окне
1 ответ
Решение
У меня 120 окон результатов в панели результатов
Это происходит, если вы запускаете 120 операторов выбора
Я хотел бы, чтобы все результаты были только в одном окне.
Сделайте это как обычное соединение:
Select * from
(
select distinct Project_Id, keyword, SE_Id from [RL].[SearchMetrics_ProjectKeyword]
) f
INNER JOIN
Table1 t
ON
t.ID=F.Project_ID and
t.Keyword= f.Keyword and
t.SEID=f.SE_ID
В вашем запросе были некоторые синтаксические ошибки, поэтому я предположил, например, имя таблицы 1. Этот запрос может потребовать незначительного исправления