(сценарий для каждой строки) - PullRequest
0 голосов
/ 08 апреля 2020

Query1

cluster(x).database('$systemdb').Operations 
| where Operation == "DatabaseCreate" and Database contains "oci-"| where State =='Completed' 
and  StartedOn between (datetime(2020-04-07) .. 3d)
| distinct Database , StartedOn 
| order by StartedOn desc

Выводом моего запроса1 является список баз данных, теперь мне нужно передать каждое значение БД в query2, чтобы получить номер сборки

Запрос2:

set query_take_max_records=5000;
let view=datatable(Property:string,Value:dynamic)[];
let viewFile=datatable(FileName:string)[];
alias database db = cluster(x).database('y');
let latestInfoFile = toscalar((
    union isfuzzy=true viewFile,database('db').['TextFileLogs'] 
    | where FileName contains "AzureStackStampInformation" 
    | distinct FileName 
    | order by FileName 
    | take 1));
union isfuzzy=true view,(
    database('db').['TextFileLogs']
    | where FileName == latestInfoFile
    | distinct LineNumber,FileLineContent
    | order by LineNumber asc
    | summarize StampInfo=(toobject(strcat_array(makelist(FileLineContent,100000), "\r\n")))
    | mvexpand bagexpansion=array StampInfo
    | project Property=tostring(StampInfo[0]), Value=StampInfo[1] 
)|where Property contains "StampVersion" | project BuildNumber = Value;

1 Ответ

0 голосов
/ 08 апреля 2020

Функция database (): это специальная функция определения объема, и она не поддерживает непостоянные аргументы из-за соображений безопасности. В результате - вы не можете использовать подзапрос для получения списка баз данных, а затем работать с этим списком в качестве входных данных для функции database ().

Это поведение описано в: https://docs.microsoft.com/en-us/azure/kusto/query/databasefunction?pivots=azuredataexplorer

Синтаксис

база данных (stringConstant)

Аргументы

stringConstant: Имя базы данных, на которую ссылается. Указанная база данных может быть либо DatabaseName, либо PrettyName. Аргумент должен быть постоянным до выполнения запроса, т.е. не может быть получен из оценки подзапроса.

...