Bagikan melalui


prev()

Mengembalikan nilai kolom tertentu dalam baris tertentu. Baris yang ditentukan berada pada offset tertentu dari baris saat ini dalam kumpulan baris serial.

Sintaks

prev(Kolom, [ offset ], [ default_value ] )

Pelajari selengkapnya tentang konvensi sintaksis.

Parameter

Nama Jenis Diperlukan Deskripsi
Kolom string ✔️ Kolom untuk mendapatkan nilai.
offset int Offset untuk kembali berturut-turut. Defaultnya adalah 1.
default_value skalar Nilai default yang akan digunakan ketika tidak ada baris sebelumnya untuk mengambil nilai. Defaultnya adalah null.

Contoh

Memfilter data berdasarkan perbandingan antara baris yang berdampingan

Kueri berikut mengembalikan baris yang memperlihatkan pemisah lebih lama dari seperempat detik di antara panggilan ke sensor-9.

TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', Timestamp, prev(Timestamp, 1))
| where timeDiffInMilliseconds > 250

Output

Tanda waktu SensorName Nilai PublisherId MachineId timeDiff
2022-04-13T00:58:53.048506Z sensor-9 0.39217481975439894 fdbd39ab-82ac-4ca0-99ed-2f83daf3f9bb M100 251
2022-04-13T01:07:09.63713Z sensor-9 0.46645392778288297 e3ed081e-501b-4d59-8e60-8524633d9131 M100 313
2022-04-13T01:07:10.858267Z sensor-9 0.693091598493419 278ca033-2b5e-4f2c-b493-00319b275aea M100 254
2022-04-13T01:07:11.203834Z sensor-9 0.52415808840249778 4ea27181-392d-4947-b811-ad5af02a54bb M100 331
2022-04-13T01:07:14.431908Z sensor-9 0.35430645405452 0af415c2-59dc-4a50-89c3-9a18ae5d621f M100 268
... ... ... ... ... ...

Melakukan agregasi berdasarkan perbandingan antara baris yang berdampingan

Kueri berikut menghitung perbedaan waktu rata-rata dalam milidetik antara panggilan ke sensor-9.

TransformedSensorsData
| where SensorName == 'sensor-9'
| sort by Timestamp asc
| extend timeDiffInMilliseconds = datetime_diff('millisecond', Timestamp, prev(Timestamp, 1))
| summarize avg(timeDiffInMilliseconds)

Output

avg_timeDiffInMilliseconds
30.726900061254298

Perluas baris dengan data dari baris sebelumnya

Dalam kueri berikut, sebagai bagian dari serialisasi yang dilakukan dengan operator serialisasi, kolom previous_session_type baru ditambahkan dengan data dari baris sebelumnya. Karena tidak ada sesi sebelum sesi pertama, kolom kosong di baris pertama.

ConferenceSessions
| where conference == 'Build 2019'
| serialize previous_session_type = prev(session_type)
| project time_and_duration, session_title, session_type, previous_session_type

Output

time_and_duration session_title session_type previous_session_type
Senin, 6 Mei, 8:30-10:00 am Catatan Kunci Visi - Satya Nadella Keynote
Senin, 6 Mei, 1:20-13:40 Azure Data Explorer: Analisis Rangkaian Waktu Tingkat Lanjut Sesi Ekspos Keynote
Senin, 6 Mei, 2:00-15:00 Platform Data Azure - Mendukung Aplikasi Modern dan Analitik Skala Cloud di Skala Petabyte Pelarian Sesi Ekspos
Senin, 6 Mei, 4:00-4:20 pm Cara BASF menggunakan Azure Data Services Sesi Ekspos Pelarian
Senin, 6 Mei, 6:50 - 19:10 Azure Data Explorer: Mengoprasionalkan model ML Anda Sesi Ekspos Sesi Ekspos
... ... ... ...