Suche…
DECIMAL und NUMERIC
Feste Genauigkeit und Dezimalzahlen. DECIMAL
und NUMERIC
sind funktional gleichwertig.
Syntax:
DECIMAL ( precision [ , scale] )
NUMERIC ( precision [ , scale] )
Beispiele:
SELECT CAST(123 AS DECIMAL(5,2)) --returns 123.00
SELECT CAST(12345.12 AS NUMERIC(10,5)) --returns 12345.12000
FLOAT und REAL
Ungefähre-Anzahl-Datentypen zur Verwendung mit numerischen Gleitkommadaten.
SELECT CAST( PI() AS FLOAT) --returns 3.14159265358979
SELECT CAST( PI() AS REAL) --returns 3.141593
Ganzzahlen
Datentypen mit genauen Zahlen, die Ganzzahldaten verwenden.
Datentyp | Angebot | Lager |
---|---|---|
Bigint | -2 ^ 63 (-9.223.372.036.854.775,808) bis 2 ^ 63-1 (9.223.372.036.854.775.807) | 8 Bytes |
int | -2 ^ 31 (-2.147.483.648) bis 2 ^ 31-1 (2.147.483.647) | 4 Bytes |
smallint | -2 ^ 15 (-32.768) bis 2 ^ 15-1 (32.767) | 2 Bytes |
Winzige | 0 bis 255 | 1 Byte |
Geld und Kleinigkeiten
Datentypen, die Währungs- oder Währungswerte darstellen.
Datentyp | Angebot | Lager |
---|---|---|
Geld | -922.337.203,685,477,5808 bis 922,337,203,685,477,5807 | 8 Bytes |
kleines geld | -214,748,3648 bis 214,748,3647 | 4 Bytes |
BINARY und VARBINARY
Binäre Datentypen mit fester oder variabler Länge.
Syntax:
BINARY [ ( n_bytes ) ]
VARBINARY [ ( n_bytes | max ) ]
n_bytes
können eine beliebige Anzahl von 1 bis 8000 Bytes sein. max
gibt an, dass der maximale Speicherplatz 2 ^ 31-1 beträgt.
Beispiele:
SELECT CAST(12345 AS BINARY(10)) -- 0x00000000000000003039
SELECT CAST(12345 AS VARBINARY(10)) -- 0x00003039
CHAR und VARCHAR
String-Datentypen mit fester oder variabler Länge.
Syntax:
CHAR [ ( n_chars ) ]
VARCHAR [ ( n_chars ) ]
Beispiele:
SELECT CAST('ABC' AS CHAR(10)) -- 'ABC ' (padded with spaces on the right)
SELECT CAST('ABC' AS VARCHAR(10)) -- 'ABC' (no padding due to variable character)
SELECT CAST('ABCDEFGHIJKLMNOPQRSTUVWXYZ' AS CHAR(10)) -- 'ABCDEFGHIJ' (truncated to 10 characters)
NCHAR und NVARCHAR
UNICODE-String-Datentypen mit fester oder variabler Länge.
Syntax:
NCHAR [ ( n_chars ) ]
NVARCHAR [ ( n_chars | MAX ) ]
Verwenden Sie MAX
für sehr lange Zeichenfolgen mit mehr als 8000 Zeichen.
EINDEUTIGE KENNUNG
Eine 16-Byte-GUID / UUID.
DECLARE @GUID UNIQUEIDENTIFIER = NEWID();
SELECT @GUID -- 'E28B3BD9-9174-41A9-8508-899A78A33540'
DECLARE @bad_GUID_string VARCHAR(100) = 'E28B3BD9-9174-41A9-8508-899A78A33540_foobarbaz'
SELECT
@bad_GUID_string, -- 'E28B3BD9-9174-41A9-8508-899A78A33540_foobarbaz'
CONVERT(UNIQUEIDENTIFIER, @bad_GUID_string) -- 'E28B3BD9-9174-41A9-8508-899A78A33540'