Как выполнить итерацию в списке всей базы данных на сервере?

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

let
Source = Sql.Databases(SERVER),
database2017T = Source{[Name="database2017T"]}[Data],
database2016T = Source{[Name="database2016T"]}[Data],
database2015T = Source{[Name="database2015T"]}[Data],
database2014T = Source{[Name="database2014T"]}[Data],
database2013T = Source{[Name="database2013T"]}[Data],
dbo_CBKISLEM17 = database2017T{[Schema="dbo",Item="CEKBORDRO"]}[Data],
dbo_CBKISLEM16 = database2016T{[Schema="dbo",Item="CEKBORDRO"]}[Data],
dbo_CBKISLEM15 = database2015T{[Schema="dbo",Item="CEKBORDRO"]}[Data],
dbo_CBKISLEM14 = database2014T{[Schema="dbo",Item="CEKBORDRO"]}[Data],
dbo_CBKISLEM13 = database2013T{[Schema="dbo",Item="CEKBORDRO"]}[Data],
dbo_CEKBORDRO=Table.Combine({dbo_CBKISLEM17,dbo_CBKISLEM16,dbo_CBKISLEM15,dbo_CBKISLEM14,dbo_CBKISLEM13})

в dbo_CEKBORDRO

Как я могу написать такой запрос, чтобы вывести таблицу всех лет, чтобы мне не нужно было обновлять запросы каждый год.

для xyz = 2013 г. по настоящее время. Год (NOW ()) "database" & xyz = Source {[Name = "database" & xyz & "T"]} [Data], "dbo_CBKISLEM" & xyz = "database" & xyz & "T {[Schema =" dbo ", Item =" CEKBORDRO "]} [Данные], dbo_CEKBORDRO = Table.Combine ({" dbo_CBKISLEM "& xyz})


person Serkan Demirhan    schedule 11.08.2017    source источник


Ответы (1)


Я не очень-то заинтересован в пользовательском кодировании на языке M, но вам, вероятно, это не нужно для этого требования. Просто запустите запрос, подключившись к одной таблице в одной базе данных. Затем удалите 2-й шаг «Навигация». Затем разверните столбец «Данные», чтобы получить список всех таблиц и представлений во всех базах данных. Затем отфильтруйте этот список, выбрав только те таблицы, которые вам нужны (для этого вам может потребоваться добавить настраиваемый столбец). Затем разверните столбец данных, чтобы получить все строки в каждой таблице или представлении.

person Mike Honey    schedule 14.08.2017