## SAMPLE-Definition (sample_definition)

Die Angabe einer SAMPLE-Definition (sample_definition) definiert die Stichprobengröße, d.h. wie viele Zeilen einer Tabelle beim Aktualisieren von Statistiken herangezogen werden sollen.

### Syntax

<sample_definition> ::=
SAMPLE <unsigned_integer> ROWS
| SAMPLE <unsigned_integer> PERCENT

### Erläuterung

Das Datenbanksystem führt für jede Basistabelle Statistikwerte, die zur Bestimmung der besten Strategie zur Ausführung einer SQL-Anweisung herangezogen werden. Diese Statistikwerte werden durch die UPDATE STATISTICS-Anweisung im Datenbankkatalog abgelegt.

Wenn in einer UPDATE STATISTICS-Anweisung eine SAMPLE-Definition angegeben wird, legt die SAMPLE-Definition fest, wieviele Zeilen der Tabelle zur Bestimmung der Statistikwerte herangezogen werden sollen (Stichprobengröße).

Wenn in einer UPDATE STATISTICS-Anweisung keine SAMPLE-Definition angegeben wird und auch nicht erzwungen wird, dass alle Zeilen der Tabelle zur Bestimmung der Statistikwerte herangezogen werden sollen, so verwendet das Datenbanksystem die entsprechende SAMPLE-Definition der CREATE TABLE-Anweisung oder der ALTER TABLE-Anweisung.

Die Definition der Anzahl der Zeilen, für die die UPDATE STATISTCS-Anweisung durchgeführt werden soll, kann durch Angabe der Anzahl der Zeilen (ROWS) oder durch Angabe in Prozent (PERCENT) erfolgen.

● Bei Angabe einer SAMPLE-Definition mittels PERCENT muss die Ganze Zahl ohne Vorzeichen im Bereich zwischen 0 und 100 liegen.

● Wenn keine SAMPLE-Definition definiert ist, verwendet das Datenbanksystem den Wert 20000 ROWS.

##### Stichprobengröße 0

Sie können einzelne Tabellen von einem UPDATE STATISTICS-Lauf ausschließen, indem Sie mittels einer ALTER TABLE-Anweisung für diese Tabellen die Stichprobengröße auf 0 setzen.

##### SQL-Anweisungen, in denen die SAMPLE-Definition verwendet werden kann

CREATE TABLE-Anweisung

ALTER TABLE-Anweisung

UPDATE STATISTICS-Anweisung