Delen via


voorbeeldoperator

Van toepassing op: ✅Microsoft FabricAzure Data ExplorerAzure MonitorMicrosoft Sentinel-

Retourneert het opgegeven aantal willekeurige rijen uit de invoertabel.

Notitie

  • sample is gericht op snelheid in plaats van zelfs de verdeling van waarden. Dit betekent met name dat er geen 'eerlijke' resultaten worden geproduceerd als deze worden gebruikt nadat operators 2 gegevenssets van verschillende grootten hebben (zoals een union of join operators). Het is raadzaam om sample direct na de tabelreferentie en filters te gebruiken.
  • sample is een niet-deterministische operator en retourneert telkens wanneer deze wordt geëvalueerd tijdens de query een andere resultatenset. De volgende query levert bijvoorbeeld twee verschillende rijen op (zelfs als men zou verwachten dat dezelfde rij twee keer wordt geretourneerd).

Syntaxis

T| sampleNumberOfRows-

Meer informatie over syntaxisconventies.

Parameters

Naam Type Vereist Beschrijving
T- string ✔️ De tabellaire invoerexpressie.
NumberOfRows- int, lang of echt ✔️ Het aantal rijen dat moet worden geretourneerd. U kunt elke numerieke expressie opgeven.

Voorbeelden

In het voorbeeld in deze sectie ziet u hoe u de syntaxis gebruikt om aan de slag te gaan.

In de voorbeelden in dit artikel worden openbaar beschikbare tabellen gebruikt in de Help-cluster, zoals de StormEvents tabel in de Voorbeelden database.

In de voorbeelden in dit artikel worden openbaar beschikbare tabellen gebruikt, zoals de tabel StormEvents in de weather analytics voorbeeldgegevens.

Een voorbeeld genereren

Met deze query wordt een reeks getallen gemaakt, wordt één waarde gebruikt en vervolgens wordt dat voorbeeld gedupliceerd.

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

uitvoer

x
74
63

Om ervoor te zorgen dat in het bovenstaande voorbeeld _sample eenmaal wordt berekend, kunt u materialize() functie gebruiken:

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

uitvoer

x
24
24

Een voorbeeld genereren van een bepaald percentage gegevens

Als u een bepaald percentage van uw gegevens wilt samplen (in plaats van een opgegeven aantal rijen), kunt u dit gebruiken

StormEvents | where rand() < 0.1

uitvoer

De tabel bevat de eerste paar rijen van de uitvoer. Voer de query uit om het volledige resultaat weer te geven.

StartTime EndTime EpisodeId EventId Staat EventType
2007-01-01T00:00:00Z 2007-01-20T10:24:00Z 2403 11914 INDIANA Overstroming
2007-01-01T00:00:00Z 2007-01-24T18:47:00Z 2408 11930 INDIANA Overstroming
2007-01-01T00:00:00Z 2007-01-01T12:00:00Z 1979 12631 DELAWARE Zware regen
2007-01-01T00:00:00Z 2007-01-01T00:00:00Z 2592 13208 NORTH CAROLINA Onweer wind
2007-01-01T00:00:00Z 2007-01-31T23:59:00Z 1492 7069 MINNESOTA Droogte
2007-01-01T00:00:00Z 2007-01-31T23:59:00Z 2240 10858 TEXAS Droogte
... ... ... ... ... ...

Een voorbeeld van sleutels genereren

Als u voorbeeldsleutels wilt gebruiken in plaats van rijen (bijvoorbeeld voorbeeld van 10 id's en alle rijen voor deze id's op te halen), kunt u sample-distinct gebruiken in combinatie met de operator in.

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

uitvoer

De tabel bevat de eerste paar rijen van de uitvoer. Voer de query uit om het volledige resultaat weer te geven.

StartTime EndTime EpisodeId EventId Staat EventType
2007-09-18T20:00:00Z 2007-09-19T18:00:00Z 11074 60904 FLORIDA Zware regen
2007-09-20T21:57:00Z 2007-09-20T22:05:00Z 11078 60913 FLORIDA Tornado
2007-09-29T08:11:00Z 2007-09-29T08:11:00Z 11091 61032 ATLANTISCHE ZUID Waterhoos
2007-12-07T14:00:00Z 2007-12-08T04:00:00Z 13183 73241 AMERIKAANS-SAMOA Stortvloed
2007-12-11T21:45:00Z 2007-12-12T16:45:00Z 12826 70787 KANSAS Overstroming
2007-12-13T09:02:00Z 2007-12-13T10:30:00Z 11780 64725 KENTUCKY Overstroming
... ... ... ... ... ...