У меня есть доступ (только для чтения) к базе данных ms sql, где я хочу сделать выбор на основе оператора where, который хранится в таблице.
результат
SELECT c.collectionsql
FROM dbo.collections AS c
where c.description = '9-nummers laatste 9 maanden geen afzet'
- это
, где (Article.demand13 <= 0) и (Article.demand14 <= 0) и (Article.demand15 <= 0) и (Article.demand16 <= 0) и (Article.demand17 <= 0) и (Article.demand18 <= 0) и (Article.demand19 <= 0) и (Article.demand20 <= 0) и (Article.demand21 <= 0) и (Article.demand22 <= 0) и (Article.demandClass <= 7) и (Article.bufferConstant <= 0) и (Article.averageDemand> = 0.01) и ((Article.code> = '900000' и Article.code <= '999999 ')) </p>
моя попытка ->
Declare @query Nvarchar(max)
set @query ='Select * from dbo.article as Article ' + (SELECT c.collectionsql
FROM dbo.collections AS c
where c.description = '9-nummers laatste 9 maanden geen afzet'
)
exec ( @query )
Я получаю пустой результат. вероятно из-за части "Exe c". Есть ли более простой способ сделать выбор на основе объединения?
SELECT *
FROM dbo.Article AS Article
where (Article.demand13 <= 0) and (Article.demand14 <= 0) and (Article.demand15 <= 0) and (Article.demand16 <= 0) and (Article.demand17 <= 0) and (Article.demand18 <= 0) and (Article.demand19 <= 0) and (Article.demand20 <= 0) and (Article.demand21 <= 0) and (Article.demand22 <= 0) and (Article.demandClass <= 7) and (Article.bufferConstant <= 0) and (Article.averageDemand >= 0.01) and ((Article.code >= '900000' and Article.code <= '999999'))
дает примерно 243 строки даты из dbo.article. Проблема в том, что запрос, хранящийся в таблице dbo.collections, меняется каждый месяц. Эти данные я пытаюсь получить в Excel Power Pivot.