Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Gera uma tabela de valores de coluna única.
Observação
Este operador não usa uma entrada tabular.
Sintaxe
range
columnNamefrominiciartopararstepetapa
Saiba mais sobre convenções de sintaxe.
Parâmetros
| Designação | Tipo | Necessário | Descrição |
|---|---|---|---|
| columnName | string |
✔️ | O nome da única coluna na tabela de saída. |
| começar | int, long, real, datetime ou timespan | ✔️ | O menor valor na saída. |
| parar | int, long, real, datetime ou timespan | ✔️ | O valor mais alto que está sendo gerado na saída ou um limite no valor mais alto se etapa estiver acima desse valor. |
| passo | int, long, real, datetime ou timespan | ✔️ | A diferença entre dois valores consecutivos. |
Observação
Os valores não podem fazer referência às colunas de nenhuma tabela. Se você quiser calcular o intervalo com base em uma tabela de entrada, use a função de de intervalo de
Devoluções
Uma tabela com uma única coluna chamada columnName , cujos valores são iniciar, iniciar+etapa, ... até e até parar.
Exemplos
O exemplo nesta seção mostra como usar a sintaxe para ajudá-lo a começar.
Os exemplos neste artigo usam tabelas disponíveis publicamente no de cluster de ajuda, como a tabela
StormEventsno banco de dados Samples.
Os exemplos neste artigo usam tabelas disponíveis publicamente, como a tabela
StormEventsna análise do tempo dados de exemplo.
Intervalo nos últimos sete dias
O exemplo a seguir cria uma tabela com entradas para o carimbo de data/hora atual estendido nos últimos sete dias, uma vez por dia.
range LastWeek from ago(7d) to now() step 1d
Output
| Última Semana |
|---|
| 2015-12-05 09:10:04.627 |
| 2015-12-06 09:10:04.627 |
| ... |
| 2015-12-12 09:10:04.627 |
Combine diferentes tempos de paragem
O exemplo a seguir mostra como estender intervalos para usar vários tempos de parada usando o operador union.
let Range1 = range Time from datetime(2024-01-01) to datetime(2024-01-05) step 1d;
let Range2 = range Time from datetime(2024-01-06) to datetime(2024-01-10) step 1d;
union Range1, Range2
| order by Time asc
Output
| Hora |
|---|
| 2024-01-04 00:00:00.0000000 |
| 2024-01-05 00:00:00.0000000 |
| 2024-01-06 00:00:00.0000000 |
| 2024-01-07 00:00:00.0000000 |
| 2024-01-08 00:00:00.0000000 |
| 2024-01-09 00:00:00.0000000 |
| 2024-01-10 00:00:00.0000000 |
Intervalo usando parâmetros
O exemplo a seguir mostra como usar o operador range com parâmetros, que são estendidos e consumidos como uma tabela.
let toUnixTime = (dt:datetime)
{
(dt - datetime(1970-01-01)) / 1s
};
let MyMonthStart = startofmonth(now()); //Start of month
let StepBy = 4.534h; //Supported timespans
let nn = 64000; // Row Count parametrized
let MyTimeline = range MyMonthHour from MyMonthStart to now() step StepBy
| extend MyMonthHourinUnixTime = toUnixTime(MyMonthHour), DateOnly = bin(MyMonthHour,1d), TimeOnly = MyMonthHour - bin(MyMonthHour,1d)
; MyTimeline | order by MyMonthHour asc | take nn
Output
| MeuMêsHora | MyMonthHourinUnixTime | DateOnly | TimeOnly |
|---|---|---|---|
| 2023-02-01 | 00:00:00.0000000 | 1675209600 | 2023-02-01 00:00:00.0000000 |
| 2023-02-01 | 04:32:02.4000000 | 1675225922.4 | 2023-02-01 00:00:00.0000000 |
| 2023-02-01 | 09:04:04.8000000 | 1675242244.8 | 2023-02-01 00:00:00.0000000 |
| 2023-02-01 | 13:36:07.2000000 | 1675258567.2 | 2023-02-01 00:00:00.0000000 |
| ... | ... | ... | ... |
Etapas incrementadas
O exemplo a seguir cria uma tabela com uma única coluna chamada Steps cujo tipo é long e resulta em valores de um a oito incrementados por três.
range Steps from 1 to 8 step 3
Output
| Passos |
|---|
| 1 |
| 4 |
| 7 |
Rastreamentos ao longo de um intervalo de tempo
O exemplo a seguir mostra como o operador range pode ser usado para criar uma tabela de dimensão que é usada para introduzir zeros onde os dados de origem não têm valores. Ele pega carimbos de data/hora das últimas quatro horas e conta rastreamentos para cada intervalo de um minuto. Quando não há vestígios para um intervalo específico, a contagem é zero.
range TIMESTAMP from ago(4h) to now() step 1m
| join kind=fullouter
(Traces
| where TIMESTAMP > ago(4h)
| summarize Count=count() by bin(TIMESTAMP, 1m)
) on TIMESTAMP
| project Count=iff(isnull(Count), 0, Count), TIMESTAMP
| render timechart