Powerquery - ссылка на значение ячейки Excel в запросе SQL? - PullRequest
0 голосов
/ 08 мая 2020

Я пытаюсь изменить предоставленный мне лист Excel с подключением к базе данных SQL, который выглядит следующим образом:

select * from DB.AccountAssignments where Company_Code = '102'

Как я могу заменить stati c 102 значение для ссылки на конкретную ячейку c в Excel? Например, ячейка A1? Цель, конечно же, заключается в том, что когда я изменяю 102 на другое значение, запрос будет запускаться повторно без необходимости вводить PowerQuery для самостоятельного редактирования запроса каждый раз.

ПРИМЕЧАНИЕ. Я нашел примеры, которые включают фильтрация ПОСЛЕ выполнения запроса и извлечения данных. Однако источник данных ОГРОМНЫЙ, поэтому мне нужно, чтобы параметр балансовой единицы был встроен в запрос, чтобы данные, внесенные в Powerquery, уже были отфильтрованы. В этом разница между запросом, требующим 5 секунд для выполнения, и 5 минутами для выполнения.

Я потратил пару часов, пытаясь выполнить инструкции для более старых сообщений, но пока безуспешно.

1 Ответ

0 голосов
/ 08 мая 2020

Преобразование ячейки A1 в таблицу из диапазона (Вставка -> Таблица) Назовите таблицу как параметр (или как угодно) Используйте следующие строки, чтобы использовать эту таблицу в своем запросе мощности:

params = Excel.CurrentWorkbook(){[Name="params"]}[Content],
code = params{0}[value],

Используйте это в вашем SQL запросе:

select * from DB.AccountAssignments where Company_Code = code

Скорее всего, у вас будет что-то похожее на строку ниже в вашем редакторе запросов power:

Source = Odbc.Query("dsn=SQLDSN", "select * from DB.AccountAssignments where Company_Code = " & code ),
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...