Поиск…


DECIMAL и NUMERIC

Фиксированная точность и масштабирование десятичных чисел. DECIMAL и NUMERIC функционально эквивалентны.

Синтаксис:

DECIMAL ( precision [ , scale] )
NUMERIC ( precision [ , scale] )

Примеры:

SELECT CAST(123 AS DECIMAL(5,2)) --returns 123.00
SELECT CAST(12345.12 AS NUMERIC(10,5)) --returns 12345.12000

FLOAT и REAL

Типы данных приблизительного числа для использования с числовыми данными с плавающей запятой.

SELECT CAST( PI() AS FLOAT) --returns 3.14159265358979
SELECT CAST( PI() AS REAL) --returns 3.141593

Целые

Типы данных точного числа, которые используют целочисленные данные.

Тип данных Спектр Место хранения
BIGINT -2 ^ 63 (-9,223,372,036,854,775,808) до 2 ^ 63-1 (9,223,372,036,854,775,807) 8 байт
ИНТ -2 ^ 31 (-2,147,483,648) до 2 ^ 31-1 (2,147,483,647) 4 байта
SMALLINT -2 ^ 15 (-32,768) до 2 ^ 15-1 (32,767) 2 байта
TINYINT От 0 до 255 1 байт

ДЕНЬГИ И МАЛОМОННИ

Типы данных, которые представляют собой денежные или валютные значения.

Тип данных Спектр Место хранения
Деньги -922,337,203,685,477,5808 до 922,337,203,685,477.5807 8 байт
smallmoney -214,748.3648 до 214,748.3647 4 байта

БИНАРЫ И ВАРИАНТЫ

Бинарные типы данных как фиксированной длины, так и переменной длины.

Синтаксис:

BINARY [ ( n_bytes ) ]
VARBINARY [ ( n_bytes | max ) ]

n_bytes может быть любым числом от 1 до 8000 байт. max указывает, что максимальное пространство для хранения составляет 2 ^ 31-1.

Примеры:

SELECT CAST(12345 AS BINARY(10)) -- 0x00000000000000003039
SELECT CAST(12345 AS VARBINARY(10)) -- 0x00003039

CHAR и VARCHAR

Строковые типы данных как фиксированной длины, так и переменной длины.

Синтаксис:

CHAR [ ( n_chars ) ]
VARCHAR [ ( n_chars ) ]

Примеры:

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 и NVARCHAR

Строковые типы данных UNICODE фиксированной длины или переменной длины.

Синтаксис:

NCHAR [ ( n_chars ) ]
NVARCHAR [ ( n_chars | MAX ) ]

Используйте MAX для очень длинных строк, которые могут превышать 8000 символов.

УНИКАЛЬНЫЙ ИДЕНТИФИКАТОР

16-байтовый 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'


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow