Megosztás a következőn keresztül:


sample operátor

A bemeneti táblában megadott számú véletlenszerű sort ad vissza.

Megjegyzés

  • sample az értékek egyenletes eloszlása helyett a sebességre van igazítva. Pontosabban azt jelenti, hogy nem fog "tisztességes" eredményeket eredményezni, ha a különböző méretű adathalmazokat (például a union vagy join operátorokat) egyesítő operátorok után használják. Ajánlott közvetlenül a táblahivatkozás és a szűrők után használni sample .
  • sample nem determinisztikus operátor, és minden alkalommal eltérő eredményhalmazt ad vissza, amikor kiértékeli a lekérdezés során. Az alábbi lekérdezés például két különböző sort ad vissza (még akkor is, ha kétszer is ugyanazt a sort kellene visszaadnia).

Syntax

T| sampleNumberOfRows

További információ a szintaxis konvenciókról.

Paraméterek

Név Típus Kötelező Leírás
T string ✔️ A bemeneti táblázatos kifejezés.
NumberOfRows int, long vagy real ✔️ A visszaadandó sorok száma. Bármilyen numerikus kifejezést megadhat.

Példák

let _data = range x from 1 to 100 step 1;
let _sample = _data | sample 1;
union (_sample), (_sample)

Kimenet

x
83
3

Annak érdekében, hogy a fenti _sample példában egyszer legyen kiszámítva, használhatjuk a materialize() függvényt:

let _data = range x from 1 to 100 step 1;
let _sample = materialize(_data | sample 1);
union (_sample), (_sample)

Kimenet

x
34
34

Az adatok bizonyos százalékának mintavételéhez (a sorok megadott száma helyett) használhatja a

StormEvents | where rand() < 0.1

Ha sor helyett kulcsokat szeretne mintaként használni sample-distinct (például – 10 azonosítómintát, és lekérheti az összes sort ezekhez az azonosítókhoz), használhatja az in operátorral együtt.

let sampleEpisodes = StormEvents | sample-distinct 10 of EpisodeId;
StormEvents
| where EpisodeId in (sampleEpisodes)