Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: Databricks SQL
Databricks Runtime
Veri türleri arasındaki çakışmaların nasıl çözümleneceğine ilişkin kurallar için bkz . SQL veri türü kuralları.
Desteklenen veri türleri
Azure Databricks aşağıdaki veri türlerini destekler:
Veri Türü | Açıklama |
---|---|
BIGINT | 8 bayt imzalı tamsayı sayılarını temsil eder. |
İKİLİ | Bayt dizisi değerlerini temsil eder. |
BOOLEAN | Boole değerlerini temsil eder. |
TARİH | Saat dilimi olmadan yıl, ay ve gün alanlarının değerlerini içeren değerleri temsil eder. |
ONDALıK(p,s) | Maksimum duyarlık p ve sabit ölçek s ile sayıları temsil eder. |
ÇİFT | 8 baytlık çift duyarlıklı kayan nokta sayılarını temsil eder. |
YÜZMEK | 4 baytlık tek duyarlıklı kayan nokta sayılarını temsil eder. |
INT | 4 bayt imzalı tamsayı sayılarını temsil eder. |
INTERVAL intervalQualifier | Saniye veya ay ölçeğinde zaman aralıklarını temsil eder. |
BOŞLUK | Yazılmamış NULL değerini temsil eder. |
SMALLINT | 2 bayt imzalı tamsayı sayılarını temsil eder. |
DİZGİ | Karakter dizesi değerlerini temsil eder. |
ZAMAN DAMGASI | Oturum yerel saat dilimiyle yıl, ay, gün, saat, dakika ve saniye alanlarının değerlerini içeren değerleri temsil eder. |
TIMESTAMP_NTZ | Yıl, ay, gün, saat, dakika ve saniye alanlarının değerlerini içeren değerleri temsil eder. Tüm işlemler hiçbir saat dilimi dikkate alınmadan gerçekleştirilir. |
TINYINT | 1 bayt imzalı tamsayı sayılarını temsil eder. |
ARRAY < elementType > |
elementType türüne sahip bir öğe dizisini oluşturan değerleri temsil eder. |
MAP < keyType,valueType > | Anahtar-değer çiftleri kümesini oluşturan değerleri temsil eder. |
STRUCT < [fieldName : fieldType [NOT NULL][AÇIKLAMA str][, ...]] > | Bir alan dizisi tarafından açıklanan yapıya sahip değerleri temsil eder. |
VARYANT | Yarı yapılandırılmış verileri temsil eder. |
NESNE | Bir alan kümesi tarafından açıklanan yapı ile VARIANT içindeki değerleri temsil eder. |
Önemli
Delta Lake, VOID
türünü desteklemiyor.
Veri türü sınıflandırması
Veri türleri aşağıdaki sınıflarda gruplandırılır:
- Kesin sayısal türler 10 tabanında sayıları temsil eder.
- İkili kayan nokta türleri, üsleri ve ikili gösterimi kullanarak geniş bir sayı aralığını kapsar:
- Sayısal türler tüm sayısal veri türlerini temsil eder:
- Tarih-saat türleri tarih ve saat bileşenlerini temsil eder:
- Basit türler, tek değer tutularak tanımlanan türlerdir:
- Karmaşık türler, karmaşık veya basit türlerin birden çok bileşeninden oluşur:
Dil eşlemeleri
Şunlar için geçerlidir: Databricks Runtime
Scala programlama dili
Spark SQL veri türleri paketinde org.apache.spark.sql.types
tanımlanır. Paketi içeri aktararak bunlara erişebilirsiniz:
import org.apache.spark.sql.types._
SQL türü | Veri türü | Değer türü | Veri türüne erişmek veya veri türü oluşturmak için API |
---|---|---|---|
TINYINT | BaytTürü | Bayt | BaytTürü |
SMALLINT | KısaTip | Kısa | KısaTip |
INT | TamsayıTipi | Int | TamsayıTipi |
BIGINT | UzunTip | Uzun | UzunTip |
YÜZMEK | YüzenTip | Yüzmek | YüzenTip |
ÇİFT | ÇiftTip | Çift | ÇiftTip |
ONDALıK(p,s) | OndalıkTürü | java.math.BigDecimal | OndalıkTürü |
DİZGİ | DizeTürü | Dize | DizeTürü |
İKİLİ | İkiliTip | Dizi[Bayt] | İkiliTip |
BOOLEAN | Boolean türü | Boolean (Boole Mantığı) | Boolean türü |
ZAMAN DAMGASI | Zaman Damgası Türü | java.sql.Timestamp | Zaman Damgası Türü |
TIMESTAMP_NTZ | TimestampNTZType | java.time.LocalDateTime | TimestampNTZType |
TARİH | TarihTürü | java.sql.Date | TarihTürü |
yıl-ay aralığı | YılAyAralığıTürü | java.time.Period | YılAyAralıkTürü (3) |
gün-saat aralığı | GünZamanAralığıTürü | java.time.Duration | GünZamanAralığıTipi (3) |
DİZİ | DiziTürü | scala.collection.Seq | DiziTürü(elemanTürü [, boşlukİçerir]). (2) |
HARİTA | Harita Türü | scala.collection.Map | MapType(keyType, valueType [, valueContainsNull]). (2) |
YAPI | YapıTürü | org.apache.spark.sql.Satır | StructType(alanlar). alanlar, StructField'ın Seq'larıdır. 4. |
StructField | Bu alanın veri türünün değer türü (Örneğin, IntegerType veri türüne sahip bir StructField için Int) | StructField(ad, veriTürü [, boşOlabılır]). 4 | |
VARYANT | VaryantTürü | org.apache.spark.unsafe.type.VariantVal | VaryantTürü |
NESNE | Desteklenmiyor | Desteklenmez | Desteklenmez |
Java
Spark SQL veri türleri paketinde org.apache.spark.sql.types
tanımlanır. Veri türüne erişmek veya veri türü oluşturmak için içinde org.apache.spark.sql.types.DataTypes
sağlanan fabrika yöntemlerini kullanın.
SQL türü | Veri Türü | Değer türü | Veri türüne erişmek veya veri türü oluşturmak için API |
---|---|---|---|
TINYINT | BaytTürü | Byte veya bayt | DataTypes.ByteType |
SMALLINT | KısaTip | kısa veya Kısa | VeriTipleri.ShortType |
INT | TamsayıTipi | int veya Integer | VeriTipleri.TamsayıTipi |
BIGINT | UzunTip | uzun veya Uzun | DataTypes.LongType |
YÜZMEK | YüzenTip | float veya Float | DataTypes.FloatType (Kayan Nokta Türü) |
ÇİFT | ÇiftTip | çift veya Double | DataTürleri.ÇiftTip |
ONDALıK(p,s) | OndalıkTürü | java.math.BigDecimal | DataTypes.createDecimalType() DataTypes.createDecimalType(precision, scale). |
DİZGİ | DizeTürü | Dize | DataTypes.StringType (Dize Türü) |
İKİLİ | İkiliTip | bayt[] | DataTypes.BinaryType (İkili Tür) |
BOOLEAN | Boolean türü | boolean veya Boolean | VeriTürleri.BooleanTürü |
ZAMAN DAMGASI | Zaman Damgası Türü | java.sql.Timestamp | DataTypes.ZamanDamgasiTuru |
TIMESTAMP_NTZ | TimestampNTZType | java.time.LocalDateTime | DataTypes.TimestampNTZType |
TARİH | TarihTürü | java.sql.Date | DataTypes.DateType (Tarih Türü) |
yıl-ay aralığı | YılAyAralığıTürü | java.time.Period | YılAyAralıkTürü (3) |
gün-saat aralığı | GünZamanAralığıTürü | java.time.Duration | GünZamanAralığıTipi (3) |
DİZİ | DiziTürü | ava.util.List | DataTypes.createArrayType(elementType [, containsNull]). (2) |
HARİTA | Harita Türü | java.util.Map (Java kütüphanesi öğesi) | DataTypes.createMapType(keyType, valueType [, valueContainsNull]). (2) |
YAPI | YapıTürü | org.apache.spark.sql.Satır | DataTypes.createStructType(alanlar). alanlar, bir Liste veya StructField dizisi olarak ifade edilir. 4 |
StructField | Bu alanın veri türünün değer türü (Örneğin, IntegerType veri türüne sahip bir StructField için int) | DataTypes.createStructField(name, dataType, nullable) 4 | |
VARYANT | VaryantTürü | org.apache.spark.unsafe.type.VariantVal | VaryantTürü |
NESNE | Desteklenmiyor | Desteklenmez | Desteklenmez |
Piton
Spark SQL veri türleri paketinde pyspark.sql.types
tanımlanır. Paketi içeri aktararak bunlara erişebilirsiniz:
from pyspark.sql.types import *
SQL türü | Veri türü | Değer türü | Veri türüne erişmek veya veri türü oluşturmak için API |
---|---|---|---|
TINYINT | BaytTürü | int veya long. (1) | ByteType() |
SMALLINT | KısaTip | int veya long. (1) | ShortType() |
INT | TamsayıTipi | int veya long | IntegerType() |
BIGINT | UzunTip | long (1) | LongType() |
YÜZMEK | YüzenTip | float (1) | FloatType() |
ÇİFT | ÇiftTip | yüzmek | DoubleType() |
ONDALıK(p,s) | OndalıkTürü | Ondalık.Decimal | DecimalType() |
DİZGİ | DizeTürü | Dize | StringType() |
İKİLİ | İkiliTip | bytearray | BinaryType() |
BOOLEAN | Boolean türü | ikili | BooleanType() |
ZAMAN DAMGASI | Zaman Damgası Türü | datetime.datetime | TimestampType() |
TIMESTAMP_NTZ | ZamanDamgasıNTZTürü | datetime.datetime | TimestampNTZType() |
TARİH | TarihTürü | datetime.date | DateType() |
yıl-ay aralığı | YılAyAralığıTürü | Desteklenmez | Desteklenmez |
gün-saat aralığı | GünZamanAralığıTürü | datetime.timedelta | GünZamanAralığıTipi (3) |
DİZİ | DiziTürü | liste, tuple veya dizi | ArrayType(elementType, [containsNull]). (2) |
HARİTA | Harita Türü | Dict | MapType(keyType, valueType, [valueContainsNull]). (2) |
YAPI | YapıTürü | liste veya tuple | StructType(alanlar). alan, StructField dizisinin bir bileşenidir. (4) |
StructField | Bu alanın veri türünün değer türü (Örneğin, IntegerType veri türüne sahip bir StructField için Int) | StructField(name, dataType, [nullable]). (4) | |
VARYANT | VaryantTürü | VariantVal | VariantType() |
NESNE | Desteklenmiyor | Desteklenmez | Desteklenmez |
R
SQL türü | Veri türü | Değer türü | Veri türüne erişmek veya veri türü oluşturmak için API |
---|---|---|---|
TINYINT | BaytTürü | tamsayı (1) | 'bayt' |
SMALLINT | KısaTip | tamsayı (1) | kısa |
INT | TamsayıTipi | tamsayı | 'tamsayı' |
BIGINT | UzunTip | tamsayı (1) | uzun |
YÜZMEK | YüzenTip | sayısal (1) | yüzmek |
ÇİFT | ÇiftTip | sayısal | çift |
ONDALıK(p,s) | OndalıkTürü | Desteklenmez | Desteklenmez |
DİZGİ | DizeTürü | karakter | 'dize' |
İKİLİ | İkiliTip | ham | 'ikili' |
BOOLEAN | Boolean türü | mantıklı | Boolean |
ZAMAN DAMGASI | Zaman Damgası Türü | POSIXct | 'zaman damgası' |
TIMESTAMP_NTZ | TimestampNTZType | datetime.datetime | TimestampNTZType() |
TARİH | TarihTürü | Tarih | tarih |
yıl-ay aralığı | YılAyAralığıTürü | Desteklenmez | Desteklenmez |
gün-saat aralığı | GünZamanAralığıTürü | Desteklenmez | Desteklenmez |
DİZİ | DiziTürü | vektör veya liste | list(type='array', elementType=elementType, containsNull=[containsNull]). (2) |
HARİTA | Harita Türü | çevre | list(type='map', keyType=keyType, valueType=valueType, valueContainsNull=[valueContainsNull]). (2) |
YAPI | YapıTürü | adlandırılmış liste | list(type='struct', fields=fields). alanlar, StructField'ın Seq'larıdır. (4) |
StructField | Bu alanın veri türünün değer türü (Örneğin, IntegerType veri türüne sahip bir StructField için tamsayı) | list(name=name, type=dataType, nullable=[nullable]). (4) | |
VARYANT | Desteklenmiyor | Desteklenmez | Desteklenmez |
NESNE | Desteklenmiyor | Desteklenmez | Desteklenmez |
(1) Sayılar çalışma zamanında etki alanına dönüştürülür. Sayıların aralık içinde olduğundan emin olun.
(2) İsteğe bağlı değer varsayılan olarak olur TRUE
.
(3) Aralık türleri
YearMonthIntervalType([startField,] endField)
: Aşağıdaki alanların bitişik bir alt kümesinden oluşan yıl-ay aralığını temsil eder:startField
en soldaki alan veendField
türün en sağdaki alanıdır.startField
veendField
için geçerli değerler0(MONTH)
ve1(YEAR)
'dir.DayTimeIntervalType([startField,] endField)
: Aşağıdaki alanların bitişik bir alt kümesinden oluşan bir gün-saat aralığını temsil eder:startField
en soldaki alan veendField
türün en sağdaki alanıdır. GeçerlistartField
veendField
değerleri0(DAY)
,1(HOUR)
,2(MINUTE)
,3(SECOND)
.
(4)StructType
-
StructType(fields)
Bir dizi, liste veya s dizisi (alanlar) tarafından açıklanan yapıyaStructField
sahip değerleri temsil eder. Aynı isme sahip iki alana izin verilmiyor. -
StructField(name, dataType, nullable)
içindeki birStructType
alanı temsil eder. Bir alanın adı ilename
gösterilir. Bir alanın veri türü dataType ile gösterilir.nullable
, bu alanlarınnull
değerlere sahip olup olmadığını gösterir. Bu varsayılan seçenektir.