Sql type data: SQL Data Types for MySQL, SQL Server, and MS Access

Типы данных | Databricks на AWS

Применяется к: Databricks SQL Databricks Runtime

Правила, регулирующие разрешение конфликтов между типами данных, см. в разделе Правила для типов данных SQL.

Поддерживаемые типы данных

Databricks поддерживает следующие типы данных:

Тип данных

Описание

БОЛЬШОЙ

Представляет 8-байтовые целые числа со знаком.

ДВОИЧНЫЙ

Представляет значения последовательности байтов.

Логический

Представляет логические значения.

ДАТА

Представляет значения, содержащие значения полей год, месяц и день, без часового пояса.

ДЕСЯТИЧНЫЙ (p,s)

Представляет числа с максимальной точностью p и фиксированным масштабом s .

ДВОЙНОЙ

Представляет 8-байтовые числа с плавающей запятой двойной точности.

ПЛАВАЮЩИЙ

Представляет 4-байтовые числа одинарной точности с плавающей запятой.

ИНТ

Представляет 4-байтовые целые числа со знаком.

ИНТЕРВАЛ intervalQualifier

Представляет интервалы времени в секундах или месяцах.

ПУСТОЙ

Представляет нетипизированный NULL.

МАЛЕНЬКИЙ

Представляет 2-байтовые целые числа со знаком.

СТРОКА

Представляет значения строки символов.

TIMESTAMP

Представляет значения, содержащие значения полей года, месяца, дня, часа, минуты и секунды, с часовым поясом местного сеанса.

TIMESTAMP_NTZ

Представляет значения, содержащие значения полей года, месяца, дня, часа, минуты и секунды. Все операции выполняются без учета часового пояса.

TINYINT

Представляет 1-байтовые целые числа со знаком.

МАССИВ

Представляет значения, содержащие последовательность элементов с типом elementType .

КАРТА < keyType, valueType >

Представляет значения, содержащие набор пар ключ-значение.

СТРУКТУРА < [fieldName : fieldType [NOT NULL][COMMENT str][ …]] >

Представляет значения со структурой, описываемой последовательностью полей.

Классификация типов данных

Типы данных сгруппированы в следующие классы:

  • Целочисленные типы представляют целые числа:

    • ТИНЬИНТ

    • МАЛЕНЬКИЙ

    • ИНТ

    • БОЛЬШОЙ

  • Точные числовые типы представляют числа с основанием 10:

    • Целочисленный

    • ДЕСЯТИЧНЫЙ

  • Двоичные числа с плавающей запятой Типы используют экспоненты и двоичное представление для охвата большого диапазона чисел:

    • ПЛАВАЮЩИЙ

    • ДВОЙНОЙ

  • Числовые типы представляет все числовые типы данных:

    • Точная цифра

    • Двоичный код с плавающей запятой

  • Типы Date-time представляют компоненты даты и времени:

    • ДАТА

    • ВРЕМЕННАЯ МЕТКА

    • TIMESTAMP_NTZ

  • Простые типы — это типы, определяемые хранением одноэлементных значений:

    • Цифровой

    • Дата-время

    • ДВОИЧНЫЙ

    • Логический

    • ИНТЕРВАЛ

    • СТРОКА

  • Сложные типы состоят из нескольких компонентов сложных или простых типов:

    • МАССИВ

    • КАРТА

    • СТРУКТУРА

Сопоставления языков

Применяется к: Databricks Runtime

Типы данных Spark SQL определены в пакете org. apache.spark.sql.types . Вы получаете к ним доступ, импортируя пакет:

 import org.apache.spark.sql.types._
 

Тип SQL

Тип данных

Тип значения

API для доступа или создания типа данных

TINYINT

Тип байта

Байт

Тип байта

МАЛЕНЬКИЙ

Короткий

Короткий

Короткий

ИНТ

Целочисленный тип

Внутренний

Целочисленный тип

БОЛЬШОЙ

Длинный

Длинный

Длинный тип

ПЛАВАЮЩИЙ

Плавающий Тип

Поплавок

Плавающий Тип

ДВОЙНОЙ

Двойной тип

Двойной

Двойной тип

ДЕСЯТИЧНЫЙ (p,s)

Десятичный тип

java. math.BigDecimal

Десятичный тип

СТРОКА

Тип строки

Строка

Тип строки

ДВОИЧНЫЙ

Двоичный тип

Массив [байт]

Двоичный тип

Логический

Логический тип

Логический

Логический тип

TIMESTAMP

Тип метки времени

java.sql.Timestamp

Тип метки времени

TIMESTAMP_NTZ

Метка времениNTZType

java.time.LocalDateTime

Метка времениNTZType

ДАТА

Тип даты

java.sql. Дата

Тип даты

интервал год-месяц

ГодМесяцИнтервалТип

java. время.Период

ГодМесяцИнтервалТип (3)

дневной интервал

DayTimeIntervalType

java.time.Duration

DayTimeIntervalType (3)

МАССИВ

Тип массива

scala.collection.Seq

ArrayType(elementType [ содержитNull]). (2)

КАРТА

Тип карты

scala.collection.Map

MapType(keyType, valueType [ valueContainsNull]). (2)

СТРУКТУРА

Тип структуры

org.apache.spark.sql.Строка

StructType(поля). fields является последовательностью StructField. [4](#4).

Структурное поле

Тип значения типа данных этого поля (например, Int для StructField с типом данных IntegerType)

StructField(имя, тип данных [ допускает значение NULL]). [4](#4)

Типы данных Spark SQL определены в пакете org.apache.spark.sql.types . Чтобы получить доступ к типу данных или создать его, используйте фабричные методы, представленные в разделе 9.0077 org.apache.spark.sql.types.DataTypes .

Тип SQL

Тип данных

Тип значения

API для доступа или создания типа данных

TINYINT

Тип байта

байт или байт

Типы данных.ByteType

МАЛЕНЬКИЙ

Короткий

короткий или короткий

Типы данных.ShortType

ИНТ

Целочисленный тип

целое или целое число

Типы данных.IntegerType

БОЛЬШОЙ

Длинный

длинный или длинный

Типы данных. LongType

ПЛАВАЮЩИЙ

Плавающий Тип

с плавающей запятой или с плавающей запятой

Типы данных.FloatType

ДВОЙНОЙ

Двойной тип

двойной или двойной

Типы данных.DoubleType

ДЕСЯТИЧНЫЙ (p,s)

Десятичный тип

java.math.BigDecimal

DataTypes.createDecimalType() DataTypes.createDecimalType(точность, масштаб).

СТРОКА

Тип строки

Строка

Типы данных.StringType

ДВОИЧНЫЙ

Двоичный тип

байт[]

DataTypes.BinaryType

Логический

Логический тип

логический или логический

Типы данных. BooleanType

TIMESTAMP

Тип метки времени

java.sql.Timestamp

Типы данных.TimestampType

TIMESTAMP_NTZ

Метка времениNTZType

java.time.LocalDateTime

DataTypes.TimestampNTZType

ДАТА

Тип даты

java.sql.Дата

DataTypes.DateType

интервал год-месяц

ГодМесяцИнтервалТип

java.время.Период

ГодМесяцИнтервалТип (3)

дневной интервал

DayTimeIntervalType

java.time.Duration

DayTimeIntervalType (3)

МАССИВ

Тип массива

ava.util.List

DataTypes.createArrayType(elementType [ содержитNull]). (2)

КАРТА

Тип карты

java.util.Map

DataTypes.createMapType(keyType, valueType [ valueContainsNull]).(2)

СТРУКТУРА

Тип структуры

org.apache.spark.sql.Row

DataTypes.createStructType(поля). fields — это список или массив StructField. [4](#4)

Структурное поле

Тип значения типа данных этого поля (например, int для StructField с типом данных IntegerType)

DataTypes.createStructField(name, dataType, nullable) [4](#4)

Типы данных Spark SQL определены в пакете pyspark.sql.types . Вы получаете к ним доступ, импортируя пакет:

 из pyspark.sql.types import *
 

Тип SQL

Тип данных

Тип значения

API для доступа или создания типа данных

TINYINT

Тип байта

целые или длинные. (1)

БайтТип()

МАЛЕНЬКИЙ

Короткий

целые или длинные. (1)

Короткий тип()

ИНТ

Целочисленный тип

целые или длинные

IntegerType()

БОЛЬШОЙ

Длинный

длинный (1)

Длинный тип()

ПЛАВАЮЩИЙ

Плавающий Тип

поплавок (1)

FloatType()

ДВОЙНОЙ

Двойной тип

поплавок

Двойной тип()

ДЕСЯТИЧНЫЙ (p,s)

Десятичный тип

десятичный. Десятичный

Десятичный тип()

СТРОКА

Тип строки

строка

Тип строки()

ДВОИЧНЫЙ

Двоичный тип

массив байтов

Двоичный тип()

логическое значение

Логический тип

логический

Булев тип()

TIMESTAMP

Тип метки времени

дата-время. дата-время

TimestampType()

TIMESTAMP_NTZ

Метка времениNTZType

дата-время.дата-время

Временная меткаNTZType()

ДАТА

Тип даты

дата-время.дата

ДатаТип()

интервал год-месяц

ГодМесяцИнтервалТип

Не поддерживается

Не поддерживается

дневной интервал

DayTimeIntervalType

datetime.timedelta

DayTimeIntervalType (3)

МАССИВ

Тип массива

список, кортеж или массив

ArrayType(elementType, [содержитNull]).(2)

КАРТА

Тип карты

дикт

MapType(keyType, valueType, [valueContainsNull]). (2)

СТРУКТУРА

Тип структуры

список или кортеж

StructType(поля). Поле является последовательностью StructField. (4)

Структурное поле

Тип значения типа данных этого поля (например, Int для StructField с типом данных IntegerType)

StructField(name, dataType, [nullable]).(4)

Тип SQL

Тип данных

Тип значения

API для доступа или создания типа данных

TINYINT

Тип байта

целое (1)

«байт»

МАЛЕНЬКИЙ

Короткий

целое (1)

«короткий»

ИНТ

Целочисленный тип

целое число

«целое»

БОЛЬШОЙ

Длинный

целое (1)

«длинный»

ПЛАВАЮЩИЙ

Плавающий Тип

цифровой (1)

«плавающая»

ДВОЙНОЙ

Двойной тип

цифровой

«двойной»

ДЕСЯТИЧНЫЙ (p,s)

Десятичный тип

Не поддерживается

Не поддерживается

СТРОКА

Тип строки

символ

«строка»

ДВОИЧНЫЙ

Двоичный тип

необработанный

«двоичный»

Логический

Логический тип

логический

логическое значение

TIMESTAMP

Тип метки времени

POSIXct

«отметка времени»

TIMESTAMP_NTZ

Метка времениNTZType

дата-время. дата-время

Временная меткаNTZType()

ДАТА

Тип даты

Дата

«дата»

интервал год-месяц

ГодМесяцИнтервалТип

Не поддерживается

Не поддерживается

дневной интервал

DayTimeIntervalType

Не поддерживается

Не поддерживается

МАССИВ

Тип массива

вектор или список

list(type=’array’, elementType=elementType, containsNull=[containsNull]).(2)

КАРТА

Тип карты

окружающая среда

list(type=’map’, keyType=keyType, valueType=valueType, valueContainsNull=[valueContainsNull]).(2)

СТРУКТУРА

Тип структуры

именной список

список (тип = «структура», поля = поля). fields является последовательностью StructField. (4)

Структурное поле

Тип значения типа данных этого поля (например, целое число для StructField с типом данных IntegerType)

список(имя=имя, тип=тип данных, nullable=[nullable]).(4)

(1) Номера преобразуются в домен во время выполнения. Убедитесь, что числа находятся в пределах допустимого диапазона.

(2) Необязательное значение по умолчанию равно TRUE .

(3) Интервальные типы

  • YearMonthIntervalType([startField,] endField) : Представляет интервал год-месяц, который состоит из непрерывного подмножества следующих полей:

    startField — самое левое поле, а endField — самое правое поле типа.
    Допустимые значения startField и endField : 0(МЕСЯЦ) и 1(ГОД) .

  • DayTimeIntervalType([startField,] endField) : Представляет дневной интервал, состоящий из непрерывного подмножества следующих полей:

    startField — самое левое поле, а endField — самое правое поле типа.
    Допустимые значения startField и endField : 0(DAY) , 1(HOUR) , 2(MINUTE) , 3(SECOND) .

(4) StructType

  • StructType(поля)
    Представляет значения со структурой, описанной последовательностью, списком или массивом из StructField с (поля).
    Два поля с одинаковыми именами не допускаются.

  • StructField(имя, тип данных, обнуляемый)
    Представляет поле в StructType .
    Имя поля обозначается name .
    Тип данных поля указывается dataType.
    nullable указывает, могут ли значения этих полей иметь null значений. Это значение по умолчанию.


Общие сведения о типах данных SQL Server

Объявления

В следующих разделах описываются типы данных, поддерживаемые SQL Server.

Типы данных SQL Server

Типы данных, поддерживаемые Microsoft SQL Server, можно разделить на три основные категории: строковые, числовые и типы данных даты/времени.

Строковые типы данных

Строковые типы данных обычно используются для хранения имен, адресов, описаний или любых значений, содержащих буквы и цифры, включая двоичные данные, такие как изображения или аудиофайлы.

Тип данных Описание
символов ( n ) Сохраняет строку символов фиксированной длины. Максимальная длина 8000 символов.
varchar( n ) Сохраняет строку символов переменной длины. Максимальная длина 8000 символов.
varchar (макс.) Сохраняет строку символов переменной длины. Здесь max указывает, что максимальный размер хранилища составляет 2 ГБ.
текст Сохраняет строку символов переменной длины. Максимальный размер хранилища составляет 2 ГБ.
нчар Сохраняет строку Unicode фиксированной длины. Максимальная длина 4000 символов.
нварчар Сохраняет строку Unicode переменной длины. Максимальная длина 4000 символов.
nvarchar (макс.) Сохраняет строку Unicode переменной длины. Здесь max указывает, что максимальный размер хранилища составляет 2 ГБ.
текст Сохраняет строку Unicode переменной длины. Максимальный размер хранилища составляет 2 ГБ.
двоичный ( n ) Сохраняет двоичные данные фиксированной длины. Максимальный размер хранилища составляет 8000 байт.
varbinary( n ) Сохраняет двоичные данные переменной длины. Максимальный размер хранилища составляет 8000 байт.
переменная(макс.) Сохраняет двоичные данные переменной длины. Здесь макс указывает, что максимальный размер хранилища составляет 2 ГБ.
изображение Сохраняет двоичные данные переменной длины. Максимальный размер хранилища составляет 8000 байт.

Числовые типы данных

Числовые типы данных обычно используются для хранения таких данных, как цена, зарплата и т. д.

9 38 — 1. Подробнее см. ниже.

Тип данных Описание
бит Позволяет сохранить значение 1, 0 или NULL .
крошечный Сохраняет целочисленные значения в диапазоне от 0 до 255.
маленький Сохраняет целочисленные значения в диапазоне от -32 768 до 32 767.
внутр.
числовой ( р , с ) Числовой тип данных функционально эквивалентен десятичному типу .
маленькие деньги Позволяет точно хранить денежные или валютные значения в диапазоне от -214 748,3648 до 214 748,3647.
деньги Позволяет точно хранить денежные значения в диапазоне от -922 337 203 685 477,5808 до 922 337 203 685 477,5807.
с плавающей запятой (n) Сохраняет числовые значения с плавающей запятой. Допустимые значения: от -1,79E+308 до -2,23E-308, 0 и от 2,23E-308 до 1,79E+308.
реальный Сохраняет числовые значения с плавающей запятой. Допустимые значения от -3,40E + 38 до -1,18E — 38, 0 и 1,18E — 38 до 3,40E + 38,

При объявлении или десятичного или числового столбца можно указать точность и масштаб, например десятичный ( p , s ) или 9 0077 числовой ( р , с ) , где p или точность указывает максимальное общее количество цифр, которые могут быть сохранены как слева, так и справа от десятичной точки. Точность должна быть в диапазоне от 1 до 38. Точность по умолчанию — 18.

Принимая во внимание, что s или шкала указывает максимальное количество цифр, которое может быть сохранено справа от десятичной точки. Это число вычитается из p , чтобы определить максимальное количество цифр слева от десятичной точки. Масштаб должен быть значением от 0 до p. Масштаб по умолчанию 0.

Например, столбец price decimal(6,2) может хранить любое значение с шестью цифрами и двумя десятичными знаками, т. е. в диапазоне от -9999,99 до 9999,99.


Типы данных даты и времени

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

Тип данных Описание
дата Сохраняет значение даты в диапазоне от 0001-01-01 (1 января, 1) до
9999-12-31 (31 декабря 9999 г.).
время Сохраняет время суток с точностью до 100 наносекунд. Допустимые значения: от 00:00:00,0000000 до 23:59:59,9999999.
дата-время Сохраняет комбинированное значение даты и времени с точностью до 3,33 миллисекунды. Допустимый диапазон дат для datetime : с 1753-01-01 (1 января 1753 г.) до 9999-12-31 (31 декабря 9 декабря).999).
дата-время2 Тип datetime2 является расширением типа данных datetime , который имеет более широкий диапазон дат. Допустимый диапазон дат для datetime2 : с 0001-01-01 (1 января) до 9999-12-31 (31 декабря 9999 г.).
малая дата и время Сохраняет комбинированное значение даты и времени с точностью до 1 минуты. Действительный диапазон дат для smalldatetime — с 1900-01-01 (1 января 1900 г.) по
2079-06-06 (6 июня 2079 г.).
смещение даты и времени То же, что и datetime2 с добавлением смещения часового пояса. Формат по умолчанию: ГГГГ-ММ-ДД чч:мм:сс[.nnnnnnn] [{+|-}чч:мм] . Допустимый диапазон смещения часового пояса: от -14:00 до +14:00.

Imacros | Все права защищены © 2021