

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Typ DECIMAL oder NUMERIC
<a name="Numeric_types-decimal-or-numeric-type"></a>

Verwenden Sie den Datentyp DECIMAL oder NUMERIC, um Werte mit *benutzerdefinierter Genauigkeit* zu speichern. Die Schlüsselwörter DECIMAL und NUMERIC können synonym verwendet werden. In diesem Dokument wird der Begriff *dezimal* für diesen Datentyp bevorzugt. Der Begriff *numerisch* wird in der Regel als Oberbegriff für Ganzzahl-, Dezimalzahl- und Gleitkommazahl-Datentypen verwendet. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/clean-rooms/latest/sql-reference/Numeric_types-decimal-or-numeric-type.html)

Definieren Sie eine DECIMAL-Spalte in einer Tabelle, indem Sie ein *precision* und angeben*scale*: 

```
decimal(precision, scale)
```

 *precision*   
Die Anzahl aller signifikanten Stellen im gesamten Wert: die Anzahl der Stellen auf beiden Seiten des Dezimaltrennzeichens. Die Zahl `48.2891` hat z. B. eine Genauigkeit von 6 und 4 Dezimalstellen. Wenn Sie nichts angeben, wird standardmäßig eine Genauigkeit von 18 verwendet. Die maximale Genauigkeit ist 38.  
 Wenn die Anzahl der Ziffern links vom Dezimaltrennzeichen in einem Eingabewert die Genauigkeit der Spalte abzüglich ihrer Skala überschreitet, kann der Wert nicht in die Spalte kopiert (oder eingefügt oder aktualisiert) werden. Diese Regel gilt für alle Werte, die nicht innerhalb des Bereichs der Spaltendefinition liegen. Der zulässige Wertebereich für eine `numeric(5,2)`-Spalte erstreckt sich z. B. von `-999.99` bis `999.99`. 

 *scale*   
Die Anzahl aller Dezimalstellen im Nachkommabereich des Wertes bzw. die Anzahl der Stellen auf der rechten Seite des Dezimaltrennzeichens. Ganzzahlen haben keine Dezimalstellen. In einer Spaltenspezifikation muss der Wert für die Dezimalstellen kleiner oder gleich dem Wert für die Genauigkeit sein. Wenn Sie nichts angeben, werden standardmäßig 0 Dezimalstellen verwendet. Es sind maximal 37 Dezimalstellen zulässig.  
Wenn ein Eingabewert, der in eine Tabelle geladen wird, mehr Dezimalstellen aufweist, als für die Spalte zulässig sind, wird der Wert auf die angegebene Dezimalstelle gerundet. Die Spalte PRICEPAID in der Tabelle SALES ist z. B. eine DECIMAL(8,2)-Spalte. Wenn ein DECIMAL(8,4)-Wert in die Spalte PRICEPAID eingefügt wird, wird der Wert auf 2 Dezimalstellen gerundet.   

```
insert into sales
values (0, 8, 1, 1, 2000, 14, 5, 4323.8951, 11.00, null);

select pricepaid, salesid from sales where salesid=0;

pricepaid | salesid
-----------+---------
4323.90 |       0
(1 row)
```
 Die Ergebnisse expliziter Umwandlungen von Werten, aus der Tabelle ausgewählt wurden, werden jedoch nicht gerundet.

**Anmerkung**  
Der maximale positive Wert, der in eine DECIMAL(19,0)-Spalte eingefügt werden kann, ist `9223372036854775807` (263 -1). Die maximale negative Wert ist `-9223372036854775807`. Wenn versucht wird, den Wert `9999999999999999999` (19 mal die Ziffer Neun) einzufügen, wird ein Überlauffehler verursacht. Unabhängig von der Position des Dezimaltrennzeichens ist `9223372036854775807` die längste Zeichenkette, die AWS Clean Rooms als DECIMAL-Zahl darstellen kann. Der größte Wert, der in eine DECIMAL(19,18)-Spalte geladen werden kann, ist z. B. `9.223372036854775807`.  
Diese Regeln haben folgenden Grund:   
DEZIMALWERTE mit einer Genauigkeit von 19 oder weniger signifikanten Stellen werden intern als 8-Byte-Ganzzahlen gespeichert.
DEZIMALWERTE mit einer Genauigkeit von 20 bis 38 signifikanten Stellen werden als 16-Byte-Ganzzahlen gespeichert.

## Hinweise zur Verwendung von 128-Bit-DECIMAL- oder -NUMERIC-Spalten
<a name="Numeric_types-notes-about-using-128-bit-decimal-or-numeric-columns"></a>

Weisen Sie DECIMAL-Spalten nur dann maximale Genauigkeit zu, wenn Sie sicher sind, dass Ihre Anwendung diese Präzision erfordert. 128-Bit-Werte belegen doppelt so viel Speicherplatz wie 64-Bit-Werte und können zu langsameren Ausführungszeiten von Abfragen führen. 