prev()
Возвращает значение определенного столбца в указанной строке. Указанная строка имеет указанное смещение от текущей строки в сериализованном наборе строк.
Синтаксис
prev(
Столбца,
[ offset ],
[ default_value ] )
Дополнительные сведения о соглашениях о синтаксисе.
Параметры
Имя | Тип | Обязательно | Описание |
---|---|---|---|
column | string |
✔️ | Столбец, из которого необходимо получить значения. |
offset | int |
Смещение, возвращаемого в строках. Значение по умолчанию — 1. | |
default_value | скаляр | Значение по умолчанию, используемое при отсутствии предыдущих строк, из которых будет приниматься значение. Значение по умолчанию — null . |
Примеры
Фильтрация данных на основе сравнения смежных строк
Следующий запрос возвращает строки, показывающие разрывы длиной более четверти секунды между вызовами .sensor-9
TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', Timestamp, prev(Timestamp, 1))
| where timeDiffInMilliseconds > 250
Выходные данные
Отметка времени | SensorName | Значение | PublisherId | MachineId | timeDiff |
---|---|---|---|---|---|
2022-04-13T00:58:53.048506Z | датчик-9 | 0.39217481975439894 | fdbd39ab-82ac-4ca0-99ed-2f83daf3f9bb | M100 | 251 |
13.04.2022T01:07:09.63713Z | датчик-9 | 0.46645392778288297 | e3ed081e-501b-4d59-8e60-8524633d9131 | M100 | 313 |
13.04.2022T01:07:10.858267Z | датчик-9 | 0.693091598493419 | 278ca033-2b5e-4f2c-b493-00319b275aea | M100 | 254 |
13.04.2022T01:07:11.203834Z | датчик-9 | 0.52415808840249778 | 4ea27181-392d-4947-b811-ad5af02a54bb | M100 | 331 |
2022-04-13T01:07:14.431908Z | датчик-9 | 0.35430645405452 | 0af415c2-59dc-4a50-89c3-9a18ae5d621f | M100 | 268 |
... | ... | ... | ... | ... | ... |
Выполнение агрегирования на основе сравнения смежных строк
Следующий запрос вычисляет среднюю разницу во времени в миллисекундах между вызовами sensor-9
.
TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', Timestamp, prev(Timestamp, 1))
| summarize avg(timeDiffInMilliseconds)
Выходные данные
avg_timeDiffInMilliseconds |
---|
30.726900061254298 |
Расширение строки с помощью данных из предыдущей строки
В следующем запросе в рамках сериализации, выполненной с помощью оператора serialize, добавляется новый столбец previous_session_type
с данными из предыдущей строки. Так как до первого сеанса не было, столбец пуст в первой строке.
ConferenceSessions
| where conference == 'Build 2019'
| serialize previous_session_type = prev(session_type)
| project time_and_duration, session_title, session_type, previous_session_type
Выходные данные
time_and_duration | session_title | session_type | previous_session_type |
---|---|---|---|
Пн, 6 мая, 8:30-10:00 | Основной доклад по концепции — Сатья Наделла | Keynote | |
Пн, 6 мая, 1:20-1:40 вечера | Azure Data Explorer: расширенный анализ временных рядов | Сеанс expo | Keynote |
Пн, 6 мая, 14:00-15:00 | Платформа данных Azure — поддержка современных приложений и аналитики в масштабе облака в масштабе Petabyte | Прорыва | Сеанс expo |
Пн, 6 мая, 16:00-16:20 | Как BASF использует службы данных Azure | Сеанс expo | Прорыва |
Пн, 6 мая, 18:50 -10:10 | Azure Data Explorer: ввод в эксплуатацию моделей машинного обучения | Сеанс expo | Сеанс expo |
... | ... | ... | ... |
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по