Переменная в запросе Power BI - PullRequest
0 голосов
/ 03 января 2019

У меня есть SQL-запрос для передачи данных в Power BI.Например:

select a,b,c,d from table1 
where a in ('1111','2222','3333' etc.)

Однако список переменных ('1111','2222','3333' и т. Д.) Будет меняться каждый день, поэтому я бы хотел обновить инструкцию SQL перед обновлением данных.Это возможно?

В идеале я хотел бы сохранить электронную таблицу со списком значений a (в этом примере), поэтому перед обновлением эти параметры будут переданы в этот скрипт.Другая проблема, с которой я столкнулся, состоит в том, что список будет иметь nr параметров, поэтому последняя переменная должна быть без запятой.

Другой вариант, который я рассматривал, - запустить скрипт без where a in ('1111','2222','3333' etc.), а затем загрузитьэлектронная таблица со списком этих элементов и фильтрация отчета на основе этого списка, однако это будет большой объем данных для импорта в Power BI.

Это мой первый пост за всю историю, хотя я получал помощь от Stackoverflow длялет, надеюсь, все ясно.

1 Ответ

0 голосов
/ 05 января 2019

Я бы создал новый запрос для чтения «значений» из вашей электронной таблицы.Я бы установил для параметра «Загрузить в / импортировать данные» значение Только создать соединение (чтобы избежать дублирования данных).

Затем в вашем SQL-запросе я бы удалил предложение where.После этого вам вообще не нужно писать собственный SQL - просто выберите таблицу / представление в пользовательском интерфейсе навигации.

Затем в запросе "table1" я бы добавил шаг Merge Queries, соединяяк запросу «a values» в столбце «a», используя тип соединения: Inner.Получающиеся строки будут только теми, у которых есть соответствующее значение столбца «a» (аналогично вашему текущему условию SQL где).

Power Query не сможет отправить его на ваш SQL Server в виде одного запроса, поэтомусначала выберет все строки из таблицы1.Но это все еще довольно быстро и эффективно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...