Eşleme veri akışında veri dönüştürme ifadeleri

Uygulama hedefi: Azure SYNAPSE Analytics 'i Azure Data Factory

Veri akışları hem Azure Data Factory hem de Azure SYNAPSE Pipelines kullanılabilir. Bu makale, veri akışlarını eşlemek için geçerlidir. Dönüşümlere yeni atıdıysanız, lütfen bir eşleme veri akışı kullanarak veri dönüştürmetanıtım makalesine başvurun.

Bu makalede, eşleme veri akışlarında veri akışları ve Azure Data Factory ve Azure Synapse Analytics ifadeleri ve işlevleri hakkında ayrıntılı bilgiler ve bilgiler yer almaktadır.

İfade işlevleri

Veri Data Factory ve Synapse işlem hatlarında, veri dönüştürmelerini yapılandırmak için eşleme veri akışı özelliğinin ifade dilini kullanın.

İfade işlevi Görev
Abs Bir sayanın mutlak değeri.
Acos Kosinüs ters değerini hesaplar.
add Bir dize veya sayı çifti ekler. Bir tarihi gün sayısına ekler. Zaman damgasına bir süre ekler. Benzer türde bir diziyi diğerine ekler. + işleciyle aynı.
Adddays Tarihe veya zaman damgasına gün ekleme. Tarih için + işleci ile aynı.
addMonths Tarihe veya zaman damgasına ay ekleme. İsteğe bağlı olarak bir saat dilimini geçesiniz.
and Mantıksal AND işleci. Diğer &&.
Asin Ters sinüs değerini hesaplar.
atan Ters tanjgent değerini hesaplar.
atan2 Bir düzlemin pozitif x ekseni ile koordinatlar tarafından verilen nokta arasındaki radyan açısını döndürür.
Arasında İlk değerin dahil olmak için diğer iki değer arasında olup olamay olduğunu denetler. Sayısal, dize ve tarih saat değerleri karşılaştırıldı
bitwiseAnd İntegral türler arasında BitWise And işleci. İşleçle & aynı
bitwiseOr İntegral türler arasında BitWise Or işleci. İşleçle | aynı
bitwiseXor İntegral türler arasında BitWise Or işleci. İşleçle | aynı
saat 2b 8 ile 512 arasında yalnızca 8'in katları olan bit uzunluğuna sahip çeşitli ilkel veri türlerine sahip olan sütun kümesine & hesaplar. Bir satır için parmak izini hesaplamak için kullanılabilir
tarafından 2bBinary 8 ile 512 arasında yalnızca 8'in katları olan bit uzunluğuna sahip çeşitli ilkel veri türlerine sahip olan sütun kümesine & hesaplar. Bir satır için parmak izini hesaplamak için kullanılabilir
Durumda Değişim koşullarına göre bir değer veya diğer değer uygulanır. Giriş sayısı birden fazla ise, son koşul için varsayılan olarak NULL değeri kullanılır.
Tcmb Bir sayanın küp kökünü hesaplar.
Ceil Sayıdan küçük değil, en küçük tamsayıyı döndürür.
Coalesce Bir giriş kümesinden ilk null olmayan değeri döndürür. Tüm girişler aynı türde olmalı.
columnNames Bir akışın tüm çıkış sütunlarının adlarını alır. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçsiniz.
Sütun Bir akışın tüm çıkış sütunlarının değerlerini alır. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçsiniz.
Karşılaştırmak Aynı türe sahip iki değeri karşılar. Değer1 değeri 2 <, değer1 == değer2 ise 0, değer1 değeri2 ise pozitif > döndürür.
Concat Değişken sayıda dizeyi bir arayalar. Dizeleri olan + işleciyle aynı.
concatWS Değişken sayıda dizeyi ayırıcı ile bir arayalar. İlk parametre ayırıcıdır.
Çünkü Kosinüs değerini hesaplar.
Cosh Bir değerin hiperbolik kosinüs değerini hesaplar.
crc32 Yalnızca 0(256), 224, 256, 384, 512 değerlerine sahip olan bit uzunluğu verilen değişken ilkel veri türlerine sahip olan sütun kümesi CRC32 karması hesaplar. Bir satır için parmak izini hesaplamak için kullanılabilir.
currentDate Bu işin çalışmaya başladığı geçerli tarihi alır. İsteğe bağlı saat dilimini 'GMT', 'PST', 'UTC', 'America/Pst' şeklinde geçebilirsiniz. Yerel saat dilimi varsayılan olarak kullanılır. Kullanılabilir biçimler için SimpleDateFormat Java'nın sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
currentTimestamp İş yerel saat dilimiyle çalışmaya başladığında geçerli zaman damgasını alır.
currentUTC Geçerli zaman damgasını UTC olarak alır. Geçerli saat diliminizin küme saat diliminden farklı bir saat diliminde yorumlanmasına izin verdiyebilirsiniz. İsteğe bağlı bir saat dilimini 'GMT', 'PST', 'UTC', 'America/Pst' şeklinde geçebilirsiniz. Varsayılan olarak geçerli saat dilimi kullanılır. Kullanılabilir biçimler için SimpleDateFormat Java'nın sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html. UTC saat dilimini farklı bir saat dilimine dönüştürmek için fromUTC() kullanın.
dayOfMonth Verilen tarihin ayın günü alır.
Dayofweek Verilen tarihin haftanın günü alır. 1 - Pazar, 2 - Pazartesi ..., 7 - Cumartesi.
Dayofyear Verilen tarihin yılın günü alır.
Gün Gün sayısı için milisaniye cinsinden süre.
Derece Radyanları dereceye dönüştürür.
Bölmek Sayı çiftini böler. işleciyle / aynı.
dropLeft Dizenin sol tarafından belirtilen sayıda karakteri kaldırır. İstenen bırakma dizesinin uzunluğunu aşarsa boş bir dize döndürülür.
dropRight Dizenin sağ tarafından belirtilen sayıda karakteri kaldırır. İstenen bırakma dizesinin uzunluğunu aşarsa boş bir dize döndürülür.
Endswith Dizenin sağlanan dizeyle bitp bitmiyor olduğunu denetler.
Eşit -tir Karşılaştırma eşittir işleci. == işleciyle aynı.
equalsIgnoreCase Karşılaştırma eşittir işleci büyük/büyük/büyük harf yok sayıyor. <=> ile aynıdır.
Kaçış Bir dizeyi biçime göre kaçış karakteri olarak kullanır. Kabul edilebilir biçim için değişmez değerler:'json', 'xml', 'ecmascript', 'html', 'java'.
expr Dizeden bir ifade elde edildi. Bu, bu ifadeyi değişmez olmayan bir şekilde yazmakla aynıdır. Bu, parametreleri dize gösterimleri olarak geçmek için kullanılabilir.
Faktöriyel Bir sayanın faktörelini hesaplar.
False Her zaman yanlış bir değer döndürür. syntax(false())'false' adlı bir sütun varsa işlevini kullanın.
Kat Sayıdan büyük değil, en büyük tamsayıyı döndürür.
fromBase64 Verilen base64 kodlanmış dizenin kodunu çöz.
fromUTC UTC'den zaman damgasına dönüştürür. İsteğe bağlı olarak saat dilimini 'GMT', 'PST', 'UTC', 'America/Pst' şeklinde geçebilirsiniz. Varsayılan olarak geçerli saat dilimi kullanılır. Kullanılabilir biçimler için SimpleDateFormat Java'nın sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
büyüktür Karşılaştırma büyük işleci. İşleç > aynıdır.
greaterOrEqual Karşılaştırma büyüktür veya eşittir işleci. >= işleci ile aynıdır.
En büyük Değer listesi arasındaki en büyük değeri, null değerleri atlayarak giriş olarak döndürür. Tüm girişler null ise null döndürür.
hasColumn Akışta bir sütun değerini adıyla denetler. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçsiniz. Tasarım zamanında bilinen sütun adlarının yalnızca adlarıyla ele alınması gerekir. Hesaplanan girişler desteklenmiyor ancak parametre değiştirmelerini kullanabilirsiniz.
Saat Bir zaman damgasının saat değerini alır. İsteğe bağlı saat dilimini 'GMT', 'PST', 'UTC', 'America/Pst' şeklinde geçebilirsiniz. Yerel saat dilimi varsayılan olarak kullanılır. Kullanılabilir biçimler için SimpleDateFormat Java'nın sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
Saat Saat sayısı için milisaniye cinsinden süre.
ııf Koşula göre bir değer veya diğeri uygulanır. Diğer belirtilmemişse NULL olarak kabul edilir. Her iki değer de uyumlu olmalıdır (sayısal, dize...) .
iifNull İlk parametrenin null olup olduğunu denetler. Null değeri yoksa, ilk parametre döndürülür. Null ise, ikinci parametre döndürülür. Üç parametre belirtilirse davranış iif(isNull(value1), value2, value3) ile aynıdır ve ilk değer null ise üçüncü parametre döndürülür.
initCap Her sözcüğün ilk harfini büyük harfe dönüştürür. Sözcükler boşlukla ayrılmış olarak tanımlanır.
ınstr Bir dize içindeki alt dizenin konumunu (1 tabanlı) bulur. Bulunamasa 0 döndürülür.
isDelete Satırın silme için işaretlenirse denetler. Birden fazla giriş akışı alan dönüştürmeler için akışın (1 tabanlı) dizinini geçsiniz. Akış dizini 1 veya 2 olmalı ve varsayılan değer 1'tir.
ıserror Satırın hata olarak işaretlenirse denetler. Birden fazla giriş akışı alan dönüştürmeler için akışın (1 tabanlı) dizinini geçsiniz. Akış dizini 1 veya 2 olmalı ve varsayılan değer 1'tir.
isIgnore Satırın yoksayılacak şekilde işaretlenirse denetler. Birden fazla giriş akışı alan dönüştürmeler için akışın (1 tabanlı) dizinini geçsiniz. Akış dizini 1 veya 2 olmalı ve varsayılan değer 1'tir.
isInsert Satırın ekleme için işaretlenirse denetler. Birden fazla giriş akışı alan dönüştürmeler için akışın (1 tabanlı) dizinini geçsiniz. Akış dizini 1 veya 2 olmalı ve varsayılan değer 1'tir.
ısmatch Satırın aramada eşlen mi olduğunu denetler. Birden fazla giriş akışı alan dönüştürmeler için akışın (1 tabanlı) dizinini geçsiniz. Akış dizini 1 veya 2 olmalıdır ve varsayılan değer 1 ' dir.
IsNull Değerin NULL olup olmadığını denetler.
isUpdate Satırın güncelleştirme için işaretlenip işaretlenmediğini denetler. Birden fazla giriş akışı alan dönüşümler için akışın (1 tabanlı) dizinini geçirebilirsiniz. Akış dizini 1 veya 2 olmalıdır ve varsayılan değer 1 ' dir.
ıupsert Satırın ekleme için işaretlenip işaretlenmediğini denetler. Birden fazla giriş akışı alan dönüşümler için akışın (1 tabanlı) dizinini geçirebilirsiniz. Akış dizini 1 veya 2 olmalıdır ve varsayılan değer 1 ' dir.
jaroWinkler İki dize arasındaki JaroWinkler uzaklığını alır.
lastDayOfMonth Tarih verilen ayın son tarihini alır.
olandan Karşılaştırma küçüktür veya eşittir işleci. <= işleci ile aynı.
tarafta Dizin 1 ' den karakter sayısı ile başlayan bir alt dize ayıklar. Alt DIZEYLE aynı (Str, 1, n).
length Dizenin uzunluğunu döndürür.
düşük Karşılaştırma daha az işleci. < işleçle aynı.
Lesserotalep al Karşılaştırma küçüktür veya eşittir işleci. <= işleci ile aynı.
livenshtein İki dize arasındaki mesafeyi alır.
Like Bu, tam anlamıyla eşleşen bir dizedir. Özel durumlar aşağıdaki özel sembollerdir: _, girişte bir karakter ile eşleşir (şuna benzer. posixnormal ifadelerde)
bulamazsa Belirli bir konumu Başlatan bir dize içindeki alt dizenin konumunu (1 tabanlı) bulur. Konum atlanırsa, dizenin başından hesaba göre değerlendirilir. 0 bulunamazsa döndürülür.
açmasını Günlük değerini hesaplar. İsteğe bağlı bir taban, kullanıldıysa bir Euler numarası sağlanabilir.
log10 Günlük değerini 10 tabanına göre hesaplar.
düşürül Küçük harf, bir dize.
LPAD Belirli bir uzunluğa ulaşana kadar dizeyi sağlanan doldurmaya göre aşağı doğru doldurma. Dize uzunluğuna eşit veya daha büyük ise, bu, uzunluğa atılır.
LTrim Sol karakterlerin bir dizesini sola kırpar. İkinci parametre belirtilmemişse boşluğu kırpar. Aksi takdirde, ikinci parametrede belirtilen herhangi bir karakteri kırpar.
MD5 Farklı ilkel veri türlerinin sütun kümesinin MD5 özetini hesaplar ve 32 karakter onaltılı dize döndürür. Bir satır için parmak izini hesaplamak üzere kullanılabilir.
milisaniy Bir tarihin milisaniyelik değerini alır. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Yerel Saat dilimi varsayılan olarak kullanılır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
milisaniye Milisaniye cinsinden milisaniye cinsinden süre.
eksi Sayıları çıkartır. Bir tarihten itibaren gün sayısını çıkar. Zaman damgasından çıkarma süresi. Milisaniye cinsinden farkları almak için iki zaman damgasını çıkarın. -İşleci ile aynıdır.
dakikaya Bir zaman damgasının dakika değerini alır. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Yerel Saat dilimi varsayılan olarak kullanılır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
dakika Milisaniye cinsinden dakika sayısı.
alma Sayı çiftinin mod sayısı. % İşleci ile aynı.
ay Tarih veya zaman damgasının ay değerini alır.
monthsBetween İki tarih arasındaki ay sayısını alır. Hesaplamayı yuvarlayaseçebilirsiniz. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Yerel Saat dilimi varsayılan olarak kullanılır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
Bilirsiniz Sayı çiftini çarpar. * İşleciyle aynıdır.
olumsuzlaştırma Bir sayıyı geçersiz kılar. Pozitif sayıları negatif, tersi de döndürür.
nextSequence Sonraki benzersiz diziyi döndürür. Numara yalnızca bir bölüm içinde ardışık ve PartitionID tarafından önek olarak eklenir.
Normalleştir , Aksanlı Unicode karakterlerini ayırmak için dize değerini normalleştirir.
başlatılmadı Mantıksal değilleme işleci.
notEquals Karşılaştırma eşit değildir işleci. ! = İşleci ile aynı.
notNull Değerin NULL olup olmadığını denetler.
null NULL değeri döndürür. syntax(null())' Null ' adlı bir sütun varsa, işlevini kullanın. Tarafından kullanılan tüm işlemler NULL ile sonuçlanır.
veya Mantıksal VEYA operatörüdür. Aynı | | .
pMod Sayı çiftinin pozitif mod sayısı.
PartitionID Giriş satırının bulunduğu geçerli bölüm KIMLIĞINI döndürür.
açılma Bir sayıyı diğerinin kuvvetine yükseltir.
radyan Dereceyi radyana dönüştürür
Fi Bölüm içinde isteğe bağlı bir çekirdek verilen rastgele bir sayı döndürür. Çekirdek sabit bir değer olmalı ve rastgele değerler üretmek için PartitionID ile birlikte kullanılmalıdır
regexExtract Verili bir Regex deseninin eşleşen alt dizesini ayıklayın. Son parametre, eşleşme grubunu tanımlar ve atlanırsa varsayılan olarak 1 ' e ayarlanır. <regex>Kaçış olmadan bir dizeyle eşleştirmek için (Back quote) kullanın.
regexMatch Dizenin verilen Regex düzeniyle eşleşip eşleşmediğini denetler. <regex>Kaçış olmadan bir dizeyle eşleştirmek için (Back quote) kullanın.
regexReplace Bir Regex deseninin tüm oluşumlarını, belirtilen dize Use (arka tırnak) içindeki başka bir alt dizeyle, <regex> kaçış olmadan bir dizeyle eşleşecek şekilde değiştirin.
regexSplit Bir dizeyi Regex temelinde bir sınırlayıcı temelinde böler ve dizeler dizisini döndürür.
değiştirin Bir alt dizenin tüm tekrarlamalarını verilen dizedeki başka bir alt dize ile değiştirin. Son parametre atlanırsa, varsayılan olarak dize boş olur.
tersini Bir dizeyi tersine çevirir.
Right Sağdan karakter sayısıyla bir alt dize ayıklar. Alt DIZEDEN aynı (Str, LENGTH (str)-n, n).
rlike Dizenin verilen Regex düzeniyle eşleşip eşleşmediğini denetler.
gidiş Bir sayıyı isteğe bağlı bir ölçek ve isteğe bağlı bir yuvarlama modu olarak yuvarlar. Ölçek atlanırsa, varsayılan olarak 0 olur. Mod atlanırsa, varsayılan olarak ROUND_HALF_UP (5) olarak ayarlanır. Yuvarlama değerleri şunlardır
RPAD Dizeyi, belirli bir uzunluğa ulaşana kadar sağlanan doldurmaya göre sağ Altlar. Dize uzunluğuna eşit veya daha büyük ise, bu, uzunluğa atılır.
RTrim Sondaki karakterlerin bir dizesini sağa kırpar. İkinci parametre belirtilmemişse boşluğu kırpar. Aksi takdirde, ikinci parametrede belirtilen herhangi bir karakteri kırpar.
İkincisi Bir tarihin ikinci değerini alır. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Yerel Saat dilimi varsayılan olarak kullanılır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
saniyeden Saniye sayısı için milisaniye cinsinden süre.
SHA1 Farklı ilkel veri türlerinin sütun kümesinin SHA-1 özetini hesaplar ve 40 karakter onaltılı dize döndürür. Bir satır için parmak izini hesaplamak üzere kullanılabilir.
SHA2 Yalnızca 0 (256), 224, 256, 384, 512 değerlerinin yer aldığı bir bit uzunluğu verilen, farklı ilkel veri türlerinin sütun kümesinin SHA-2 özetini hesaplar. Bir satır için parmak izini hesaplamak üzere kullanılabilir.
sin Bir sinüs değeri hesaplar.
sinh Bir hiperbolik sinüs değeri hesaplar.
SOUNDEX soundexDizenin kodunu alır.
ayırmayı Bir dizeyi sınırlayıcıya göre böler ve dizeler dizisini döndürür.
k Bir sayının kare kökünü hesaplar.
startsWith Dizenin sağlanan dizeyle başlatılıp başlamadığını denetler.
Alt günler Bir tarih veya zaman damgasından gün çıkar. Tarih için-işleci ile aynı.
Alt aylar Bir tarih veya zaman damgasından ay çıkarın.
dizeden Belirli bir uzunluktaki alt dizeyi bir konumdan ayıklar. Konum 1 tabanlıdır. Uzunluk atlanırsa, dize sonuna varsayılan olarak ayarlanır.
Başlangıçtan Bir teğet değeri hesaplar.
tanh Bir hiperbolik tanjant değerini hesaplar.
Çevir Bir karakter kümesini dizedeki başka bir karakter kümesiyle değiştirin. Karakterlerin 1 ile 1 arasında değiştirme vardır.
kırpma Baştaki ve sondaki karakterlerden oluşan dizeyi kırpar. İkinci parametre belirtilmemişse boşluğu kırpar. Aksi takdirde, ikinci parametrede belirtilen herhangi bir karakteri kırpar.
True Her zaman gerçek bir değer döndürür. syntax(true())'true' adlı bir sütun varsa işlevini kullanın.
typeMatch Sütunun türüyle eşler. Yalnızca desen ifadelerinde kullanılabilir.number eşleşmeleri kısa, tamsayı, uzun, çift, kayan veya ondalık, tamsayı eşleşmeleri kısa, tamsayı, uzun, kesirli eşleşmeler çift, float, ondalık ve tarih saat tarih veya zaman damgası türüyle eşler.
Unescape Biçime göre bir dizenin kaçışlarını alır. Kabul edilebilir biçim için değişmez değerler:'json', 'xml', 'ecmascript', 'html', 'java'.
Üst Bir dizeyi büyük harfle ifade ediyor.
uuid Oluşturulan UUID'i döndürür.
weekOfYear Verilen tarihin yılın haftası alır.
Hafta Hafta sayısı için milisaniye cinsinden süre.
Xor Mantıksal XOR işleci. ^ işleciyle aynı.
yıl Bir tarihin yıl değerini alır.

Toplama işlevleri

Aşağıdaki işlevler yalnızca toplama, özet, özet açma ve pencere dönüştürmelerde kullanılabilir.

Toplama işlevi Görev
approxDistinctCount Bir sütun için ayrı değerlerin yaklaşık toplam sayısını alır. İsteğe bağlı ikinci parametre, tahmin hatasını kontrol etmektir.
Avg Bir sütunun değerlerinin ortalamasını alır.
avgIf Ölçütlere göre bir sütunun değerlerinin ortalamasını alır.
Toplamak Toplanan gruptaki ifadenin tüm değerlerini bir dizide toplar. Bu işlem sırasında yapılar toplanabilir ve alternatif yapılara dönüştürülmesi sağlanabilir. Öğe sayısı, bu gruptaki satır sayısına eşit olur ve null değerler içerebilir. Toplanan öğelerin sayısı küçük olması gerekir.
count Toplam değer sayısını alır. İsteğe bağlı sütun belirtilmişse, sayıdaki NULL değerleri yoksayar.
Countdistinct Bir sütun kümesi için ayrı değerlerin toplam sayısını alır.
Countıf Ölçütlere göre toplam değer sayısını alır. İsteğe bağlı sütun belirtilirse, sayıdaki NULL değerleri yoksayar.
covariancePopulation İki sütun arasındaki popülasyon değişkenlerini alır.
covariancePopulationIf Bir ölçüte göre iki sütunun popülasyon değişkenlerini alır.
covarianceSample İki sütunun örnek birlikte değişkenlerini alır.
covarianceSampleIf Bir ölçüte göre iki sütunun örnek değişkenlerini alır.
Ilk Bir sütun grubunun ilk değerini alır. İkinci ignoreNulls parametresi atlanırsa false olduğu varsayılır.
isDistinct Bir sütunun veya sütun kümesinde ayrı olup olamay olduğunu bulur. Null değeri ayrı bir değer olarak saymaz
Basık Bir sütunun sütununu alır.
tinif Ölçütlere göre sütunun en küçük sütununu alır.
Son Bir sütun grubunun son değerini alır. İkinci ignoreNulls parametresi atlanırsa false olduğu varsayılır.
Max Bir sütunun maksimum değerini alır.
maxIf Ölçütlere göre bir sütunun maksimum değerini alır.
ortalama Bir sütunun değerlerinin ortalamalarını alır. AVG ile aynı.
meanIf Ölçütlere göre sütundaki değerlerin ortalama değerine sahip olur. avgIf ile aynı.
dk Bir sütunun minimum değerini alır.
minIf Ölçütlere göre bir sütunun minimum değerini alır.
çarpıklık Bir sütunun çarpıklığını alır.
skewnessIf Ölçütlere göre bir sütunun çarpıklığını alır.
Stdsapma Bir sütunun standart sapmasını alır.
stddevIf Ölçütlere göre sütunun standart sapmasını alır.
stddevPopulation Bir sütunun popülasyon standart sapmasını alır.
stddevPopulationIf Ölçütlere göre sütunun popülasyon standart sapmasını alır.
stddevSample Bir sütunun örnek standart sapmasını alır.
stddevSampleIf Ölçütlere göre sütunun örnek standart sapmasını alır.
Toplam Sayısal sütunun toplam toplamını alır.
sumDistinct Sayısal bir sütunun farklı değerlerinin toplam toplamını alır.
Sumdıstıntif Ölçütlere dayalı olarak sayısal bir sütunun toplam toplamı alınır. Koşul herhangi bir sütunu temel alabilir.
Sum Ölçütlere dayalı olarak sayısal bir sütunun toplam toplamı alınır. Koşul herhangi bir sütunu temel alabilir.
denetlemesini Bir sütunun varyansını alır.
Vari\ıf Ölçütlere göre, bir sütunun farkını alır.
Variancepopülasyonu Bir sütunun popülasyon varyansını alır.
variancePopulationIf Ölçütlere göre, bir sütunun popülasyon varyansını alır.
varianceSample Bir sütunun taraflı olmayan varyansını alır.
Variancesampleıf Ölçütlere göre, bir sütunun taraflı olmayan varyansını alır.

Dizi işlevleri

Dizi işlevleri diziler olan veri yapıları üzerinde dönüşümler gerçekleştirir. Bunlara, dizi öğelerine ve dizinlerine yönelik özel anahtar sözcükler dahildir:

  • #acc bir diziyi azaltırken tek çıktılarınızı dahil etmek istediğiniz bir değeri temsil eder
  • #index geçerli dizi dizinini dizi dizin numaralarıyla birlikte temsil eder #index2, #index3 ...
  • #item dizideki geçerli öğe değerini temsil eder
Array işlevi Görev
array Öğe dizisi oluşturur. Tüm öğeler aynı türde olmalıdır. Hiçbir öğe belirtilmemişse, boş bir dize dizisi varsayılandır. [] Oluşturma operatörüyle aynı.
hızı Dizi dizininde öğesi bulur. Dizin 1 tabanlıdır. Sınırların dışında dizin sonucu null değer ile sonuçlanır. Bir anahtar verilen haritada bir değer bulur. Anahtar bulunamazsa null döndürür.
vardır Belirtilen dizideki herhangi bir öğe, belirtilen koşulda doğru olarak değerlendiriliyorsa true değerini döndürür. Contains, koşul işlevindeki bir öğeye #item olarak bir başvuru bekliyor.
ayrı Bir diziden ayrı bir öğe kümesi döndürür.
kullanıldıkları Başka bir bırakma yinelemelerine sahip bir dizinin fark kümesini döndürür.
filtreyle Öğeleri, belirtilen koşulu karşılamayan dizinin dışına filtreler. Filtre, koşul işlevindeki bir öğeye #item olarak bir başvuru bekliyor.
bilgi Koşulla eşleşen bir diziden ilk öğeyi bulun. Dizideki öğeyi #item olarak adresleyebileceğiniz bir filtre işlevi alır. Derin iç içe haritalar için #item_n (#item_1, #item_2...) gösterimini kullanarak üst haritalara başvurabilirsiniz.
leştirebilir Diziyi veya dizileri tek bir dizide düzleştirir. Atomik öğe dizileri değiştirilmemiş olarak döndürülür. Son bağımsız değişken isteğe bağlıdır ve yinelemeli olarak birden çok düzey derin düzleştirmek için false olarak ayarlanır.
'ndaki Dizide bir öğe olup olmadığını denetler.
intersect 2 dizideki ayrı öğelerin kesişmesi kümesini döndürür.
harita dizideki her öğeyi, belirtilen ifadeyi kullanarak yeni bir öğeye Haritalar. Eşleme, ifade işlevindeki bir öğeye #item olarak bir başvuru bekliyor.
Mapıf Bir diziyi, aynı veya daha küçük uzunlukta bir başka diziye koşullu olarak eşleştirir. Değerler, structTypes dahil olmak üzere herhangi bir veri türü olabilir. Dizideki öğeyi #item ve geçerli dizin #index olarak adreslebileceğiniz bir eşleme işlevi alır. Derin iç içe haritalar için, gösterimi kullanarak üst haritalara başvurabilirsiniz #item_[n](#item_1, #index_1...) .
Mapındex dizideki her öğeyi, belirtilen ifadeyi kullanarak yeni bir öğeye Haritalar. Map, #item ifade işlevindeki bir öğeye başvuru ve #index olarak öğe dizinine başvuru bekliyor.
mapLoop Bu uzunlukta bir dizi oluşturmak için 1 ila uzunluğuna kadar döngü. Dizideki dizine #index olarak adreslebileceğiniz bir eşleme işlevi alır. Derin iç içe haritalar için #index_n (#index_1, #index_2...) gösterimini kullanarak üst haritalara başvurabilirsiniz.
azal Öğeleri bir dizide biriktirir. Azaltma, #acc ve #item olarak ilk ifade işlevindeki bir Biriktiricinin ve bir öğenin bir başvurusunu bekler ve ikinci ifade işlevinde kullanılacak #result olarak elde edilen değeri bekler.
boyutla Bir dizi veya harita türünün boyutunu bulur
'ın Bir dizinin alt kümesini bir konumdan ayıklar. Konum 1 tabanlıdır. Uzunluk atlanırsa, dize sonuna varsayılan olarak ayarlanır.
düzenine Belirtilen koşul işlevini kullanarak diziyi sıralar. Sıralama, #item1 ve #item2 olarak ifade işlevindeki birbirini izleyen iki öğeye bir başvuru bekliyor.
unfold Bir diziyi satır kümesine ayırır ve her satırdaki kalan sütunların değerlerini yineler.
birleşim 2 dizideki ayrı öğelerin birleşim kümesini döndürür.

Önbelleğe alınmış arama işlevleri

Aşağıdaki işlevler yalnızca önbelleğe alınmış bir havuz eklediğinizde önbelleğe alınmış bir arama kullanılırken kullanılabilir.

Önbelleğe alınmış arama işlevi Görev
Ma Önbelleğe alınan havuzlardaki anahtarlarla eşleşen anahtarları kullanarak önbelleğe alınan havuzun ilk satırını arar.
mlookup Önbelleğe alınan havuzlardaki anahtarlarla eşleşen anahtarları kullanarak, önbelleğe alınmış havuzda bulunan tüm eşleşen satırları arar.
çıktıların Önbellek havuzu sonuçlarının ilk satırı döndürür
Çıkış Önbellek havuzu sonuçlarının çıkış satırı kümelerinin tamamını döndürür

Dönüşüm işlevleri

Dönüştürme işlevleri, verileri dönüştürmek ve veri türleri için test etmek için kullanılır

Dönüştürme işlevi Görev
isBitSet Bu bit kümesinde bir bit konumunun ayar olup olduğunu denetler
setBitSet Bu bit kümesinde bit konumlarını ayarlar
isBoolean Dize değerinin kurallarına göre bir boole değeri olup olduğunu denetler toBoolean()
isByte dize değerinin kurallarına göre isteğe bağlı bir biçim verilen bir byte değeri olup olduğunu denetler toByte()
ısdate Giriş tarih dizesinin isteğe bağlı bir giriş tarihi biçimi kullanarak tarih olup olduğunu denetler. Kullanılabilir biçimler için Java SimpleDateFormat'a bakın. Giriş tarihi biçimi atlanırsa varsayılan biçim yyyy-[M]M-[d]d olur. Kabul edilen biçimler: [ yyyy, yyyy-[M]M, yyyy-[M]M-[d]d, yyyy-[M]M-[d]dT* ]
isShort Dize değerinin denetimleri, dizenin kurallarına göre isteğe bağlı bir biçimde verilen kısa bir değerdir toShort()
isInteger Dize değerinin denetimleri, aşağıdaki kurallara göre isteğe bağlı bir biçim verilen bir tamsayı değeridir: toInteger()
ıslong Dize değerinin denetimleri, aşağıdaki kurallara göre isteğe bağlı bir biçimde verilen uzun bir değerdir: toLong()
ısnan Bunun bir sayı olup olmadığını kontrol edin.
isFloat Dize değerinin denetimleri, kurala göre isteğe bağlı bir biçim verilen bir kayan değerdir toFloat()
isDouble Dize değerinin denetimleri, kurallarına göre isteğe bağlı bir biçim verilen çift değerdir toDouble()
isDecimal Dize değerinin denetimleri, şu kurallara göre isteğe bağlı bir biçim verilen ondalık değerdir: toDecimal()
isTimestamp Giriş tarih dizesinin isteğe bağlı bir giriş zaman damgası biçimi kullanarak bir zaman damgası olup olduğunu denetler. Kullanılabilir biçimler için Java SimpleDateFormat'a bakın. Zaman damgası atlanırsa varsayılan desen yyyy-[M]M-[d]d hh:mm:ss[.f...] kullanılır. İsteğe bağlı saat dilimini 'GMT', 'PST', 'UTC', 'America/Pst' şeklinde geçebilirsiniz. Zaman damgası, 999 değeriyle milisaniyeye kadar doğruluğu destekler. Kullanılabilir biçimler için Java SimpleDateFormat'a bakın.
toBase64 Verilen dizeyi base64'te kodlar.
Tobinary Herhangi bir sayısal/tarih/zaman damgası/dizeyi ikili gösterime dönüştürür.
Toboolean ('t', 'true', 'y', 'yes', '1') değerini true ve ('f', 'false', 'n', 'no', '0') false ve diğer herhangi bir değer için NULL'a dönüştürür.
Tobyte Herhangi bir sayısal veya dizeyi bir bayt değerine dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir.
toDate giriş tarih dizesini isteğe bağlı bir giriş tarihi biçimi kullanarak tarihe dönüştürür. Kullanılabilir biçimler için SimpleDateFormat Java'nın sınıfına bakın. Giriş tarihi biçimi atlanırsa varsayılan biçim yyyy-[M]M-[d]d olur. Kabul edilen biçimler: :[ yyyy, yyyy-[M]M, yyyy-[M]M-[d]d, yyyy-[M]M-[d]dT* ].
Todecimal Herhangi bir sayısal veya dizeyi ondalık değere dönüştürür. Duyarlık ve ölçek belirtilmezse varsayılan olarak (10,2) kullanılır. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. en-US, de, zh-CN gibi BCP47 dili biçiminde isteğe bağlı bir yerel dil biçimi.
toDouble Herhangi bir sayısal veya dizeyi çift değere dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. en-US, de, zh-CN gibi BCP47 dili biçiminde isteğe bağlı bir yerel dil biçimi.
toFloat Herhangi bir sayısal veya dizeyi float değerine dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. Herhangi bir çifti keser.
toInteger Herhangi bir sayısal veya dizeyi tamsayı değerine dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. Uzun, kayan ve çiftleri keser.
toLong Herhangi bir sayısal veya dizeyi uzun bir değere dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. Tüm float, double'ları keser.
toShort Herhangi bir sayısal veya dizeyi kısa bir değere dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. Tüm tamsayıları, uzun, kayan, çifti keser.
toString İlkel bir veri türü dizeye dönüştürür. Sayılar ve tarih için bir biçim belirtilebilir. Belirtilmemişse sistem varsayılanı seçilecek. Java ondalık biçimi sayılar için kullanılır. Tüm olası tarih biçimleri için Java SimpleDateFormat'a bakın; varsayılan biçim yyyy-MM-dd'dir.
toTimestamp Bir dizeyi, isteğe bağlı bir zaman damgası biçimi verilen bir zaman damgasına dönüştürür. Zaman damgası atlanırsa yyyy-[M]M-[d]d hh:mm:ss[.f...] varsayılan deseni kullanılır. İsteğe bağlı saat dilimini 'GMT', 'PST', 'UTC', 'America/Pst' şeklinde geçebilirsiniz. Zaman damgası, 999 değeriyle milisaniyeye kadar doğruluğu destekler. Kullanılabilir biçimler için SimpleDateFormat Java'nın sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
toUTC Zaman damgasını UTC'ye dönüştürür. İsteğe bağlı saat dilimini 'GMT', 'PST', 'UTC', 'America/Pst' şeklinde geçebilirsiniz. Varsayılan olarak geçerli saat dilimi kullanılır. Kullanılabilir biçimler için SimpleDateFormat Java'nın sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

Eşleme işlevleri

Eşleme işlevleri eşleme veri türleri üzerinde işlem gerçekleştirir

Map işlevi Görev
Ilişkilendir Anahtar/değer eşlemesi oluşturur. Tüm anahtarlar & değerleri aynı türde olmalıdır. Hiçbir öğe belirtilmemişse, dize türü String olan bir eşlemeye varsayılan olarak ayarlanır. [ -> ] Oluşturma operatörüyle aynı. Anahtarlar ve değerler birbirleriyle aynı olmalıdır.
keyValues Anahtar/değer haritası oluşturur. İlk parametre bir anahtarlar dizisidir ve ikinci değer dizisidir. Her iki dizi da eşit uzunluğa sahip olmalıdır.
mapAssociation Anahtarları yeni değerlerle ilişkilendirerek Haritayı dönüştürür. Bir dizi döndürür. Öğeyi #key ve geçerli değeri #value olarak adreslebileceğiniz bir eşleme işlevi alır.
yeniden ilişkilendirmek Anahtarları yeni değerlerle ilişkilendirerek Haritayı dönüştürür. Öğeyi #key ve geçerli değeri #value olarak adreslebileceğiniz bir eşleme işlevi alır.

Metafunctions

Metafunctions, birincil olarak veri akışındaki meta verilerde çalışır

Programlayıcılarına Görev
byItem Birden çok eşleşme varsa, bir yapı veya yapı dizisi içinde bir alt öğe bulun, ilk eşleşme döndürülür. Eğer eşleşme yoksa NULL değer döndürür. Döndürülen değer tür dönüştürme eylemleriyle dönüştürüldü (? Tarih,? dize...). Tasarım zamanında bilinen sütun adları yalnızca adına göre değinmelidir. Hesaplanan girişler desteklenmez, ancak parametre değiştirmeler kullanabilirsiniz
byOrigin Kaynak akışındaki ada göre bir sütun değeri seçer. İkinci bağımsız değişken, kaynak akış adıdır. Birden çok eşleşme varsa, ilk eşleşme döndürülür. Eğer eşleşme yoksa NULL değer döndürür. Döndürülen değerin tür dönüştürme işlevlerinden (TO_DATE, TO_STRING...) birine dönüştürülmesi gerekir. Tasarım zamanında bilinen sütun adları yalnızca adına göre değinmelidir. Hesaplanan girişler desteklenmez, ancak parametre değiştirmeler ' i kullanabilirsiniz.
byOrigins Akıştaki bir sütun dizisini ada göre seçer. İkinci bağımsız değişken, geldiği akışdır. Birden çok eşleşme varsa, ilk eşleşme döndürülür. Eğer eşleşme yoksa NULL değer döndürür. Döndürülen değer tür dönüştürme işlevlerinden biri tarafından dönüştürülmüş tür olmalıdır (TO_DATE, TO_STRING...) Tasarım zamanında bilinen sütun adları yalnızca adına göre değinmelidir. Hesaplanan girişler desteklenmez, ancak parametre değiştirmeler ' i kullanabilirsiniz.
byName Akıştaki ada göre bir sütun değeri seçer. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçirebilirsiniz. Birden çok eşleşme varsa, ilk eşleşme döndürülür. Eğer eşleşme yoksa NULL değer döndürür. Döndürülen değerin tür dönüştürme işlevlerinden (TO_DATE, TO_STRING...) birine dönüştürülmesi gerekir. Tasarım zamanında bilinen sütun adları yalnızca adına göre değinmelidir. Hesaplanan girişler desteklenmez, ancak parametre değiştirmeler ' i kullanabilirsiniz.
byNames Akışta ada göre bir sütun dizisi seçin. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçirebilirsiniz. Birden çok eşleşme varsa, ilk eşleşme döndürülür. Bir sütun için eşleşme yoksa, çıktının tamamı NULL bir değerdir. Döndürülen değer bir tür dönüştürme işlevleri gerektiriyor (toDate, toString,...). Tasarım zamanında bilinen sütun adları yalnızca adına göre değinmelidir. Hesaplanan girişler desteklenmez, ancak parametre değiştirmeler ' i kullanabilirsiniz.
byPath Akışta ada göre hiyerarşik bir yol bulur. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçirebilirsiniz. Böyle bir yol bulunmazsa null döndürür. Tasarım zamanında bilinen sütun adları/yolları yalnızca adına veya nokta gösterim yoluna göre yapılmalıdır. Hesaplanan girişler desteklenmez, ancak parametre değiştirmeler ' i kullanabilirsiniz.
byPosition Akışta göreli konumuna göre (1 tabanlı) bir sütun değeri seçer. Konum sınırların dışında ise, NULL bir değer döndürür. Döndürülen değer tür dönüştürme işlevlerinden biri tarafından dönüştürülmüş tür olmalıdır (TO_DATE, TO_STRING...) Hesaplanan girişler desteklenmez, ancak parametre değiştirmeler ' i kullanabilirsiniz.
hasPath Akıştaki ada göre belirli bir hiyerarşik yolun var olup olmadığını denetler. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçirebilirsiniz. Tasarım zamanında bilinen sütun adları/yolları yalnızca adına veya nokta gösterim yoluna göre yapılmalıdır. Hesaplanan girişler desteklenmez, ancak parametre değiştirmeler ' i kullanabilirsiniz.
originColumns Sütunların oluşturulduğu kaynak akış için tüm çıkış sütunlarını alır. Başka bir işleve eklenmelidir.
eşlenecek İkili değerin onaltılı dize gösterimini döndürür
onaltılı değil Dize gösteriminden bir ikili değeri geri al. Bu, dizeden ikili gösterimine dönüştürmek için SHA2, MD5 ile birlikte kullanılabilir

Pencere işlevleri

Aşağıdaki işlevler yalnızca pencere dönüşümlerindeki kullanılabilir.

Windows işlevi Görev
cumeDist CumeDist işlevi, bir değerin bölüm içindeki tüm değerlere göre konumunu hesaplar. Sonuç, Bölüm sıralamasına göre geçerli satıra göre veya buna eşit olan satır sayısıdır ve pencere bölümündeki toplam satır sayısı ile ayrılır. Sıralamada bulunan tüm bağlama değerleri aynı konuma göre değerlendirilir.
denseRank Bir pencerenin order by yan tümcesinde belirtilen bir değer grubundaki bir değerin derecesini hesaplar. Sonuç, Bölüm sıralamasına göre geçerli satırdan önceki veya eşit olan satır sayısıdır. Değerler dizide boşluk üretmeyecektir. Yoğun sıralama, veriler sıralanmasa bile ve değerlerde değişiklik ararken bile kullanılır.
Çekme Geçerli satırdan önce değerlendirilen n satıra ilk parametre değerini alır. İkinci parametre, geri aranacak satır sayısıdır ve varsayılan değer 1 ' dir. Çok sayıda satır yoksa, varsayılan değer belirtilmediği sürece null değeri döndürülür.
Neden Geçerli satırdan sonra değerlendirilen n satıra ilk parametre değerini alır. İkinci parametre, görüntülenecek satır sayısı ve varsayılan değer 1 ' dir. Çok sayıda satır yoksa, varsayılan değer belirtilmediği sürece null değeri döndürülür.
nTile NTileİşlevi her bir pencere bölümü için satırları n 1 ' den çok ' a kadar olan demetlere böler n . Demet değerleri en fazla 1 farklı olacaktır. Bölümdeki satır sayısı demet sayısına eşit olarak bölünene kadar kalan değerler ilk demetle başlayarak demet başına bir tane dağıtılır. işlevi, NTile , dörttebirlik, deciles ve diğer tertiles yaygın özet istatistiklerinin hesaplanması için kullanışlıdır. İşlev, başlatma sırasında iki değişkeni hesaplar: Normal demetin boyutuna bir satır daha eklenir. Her iki değişken de geçerli bölümün boyutuna bağlıdır. Hesaplama işlemi sırasında işlev geçerli satır numarasını, geçerli demet numarasını ve demetin değiş değiştirecek satır numarasını (bucketThreshold) takip ediyor. Geçerli satır numarası demet eşiğine ulaştığında demet değeri bir artırılmış olur ve eşik demet boyutuna göre artırılmış olur (geçerli demet yenisi ek olarak ek olarak).
Rütbe Bir pencerenin order by yan tümcesinde belirtilen bir değer grubunda bir değerin derecesini hesaplar. Sonuç bir artı, bölüm sırasına göre geçerli satırdan önceki veya buna eşit satır sayısıdır. Değerler dizide boşluklar üretir. Sıralama, veriler sıralanmazsa ve değerlerde değişiklike baksa bile çalışır.
Rownumber Bir pencerede 1 ile başlayan satırlar için sıralı satır numarası atar.

Tüm işlevlerin alfabetik listesi

Aşağıda, eşleme veri akışlarında kullanılabilen tüm işlevlerin alfabetik bir listesi yer alır.

abs

abs(<value1> : number) => number

Bir sayanın mutlak değeri.

  • abs(-20) -> 20
  • abs(10) -> 10

acos

acos(<value1> : number) => double

Kosinüs ters değerini hesaplar.

  • acos(1) -> 0.0

add

add(<value1> : any, <value2> : any) => any

Bir dize veya sayı çifti ekler. Bir tarihi gün sayısına ekler. Zaman damgasına bir süre ekler. Benzer türde bir diziyi diğerine ekler. + işleciyle aynı.

  • add(10, 20) -> 30
  • 10 + 20 -> 30
  • add('ice', 'cream') -> 'icecream'
  • 'ice' + 'cream' + ' cone' -> 'icecream cone'
  • add(toDate('2012-12-12'), 3) -> toDate('2012-12-15')
  • toDate('2012-12-12') + 3 -> toDate('2012-12-15')
  • [10, 20] + [30, 40] -> [10, 20, 30, 40]
  • toTimestamp('2019-02-03 05:19:28.871', 'yyyy-MM-dd HH:mm:ss.SSS') + (days(1) + hours(2) - seconds(10)) -> toTimestamp('2019-02-04 07:19:18.871', 'yyyy-MM-dd HH:mm:ss.SSS')

addDays

addDays(<date/timestamp> : datetime, <days to add> : integral) => datetime

Tarihe veya zaman damgasına gün ekleme. Tarih için + işleci ile aynı.

  • addDays(toDate('2016-08-08'), 1) -> toDate('2016-08-09')

addMonths

addMonths(<date/timestamp> : datetime, <months to add> : integral, [<value3> : string]) => datetime

Tarihe veya zaman damgasına ay ekleme. İsteğe bağlı olarak bir saat dilimini geçesiniz.

  • addMonths(toDate('2016-08-31'), 1) -> toDate('2016-09-30')
  • addMonths(toTimestamp('2016-09-30 10:10:10'), -1) -> toTimestamp('2016-08-31 10:10:10')

and

and(<value1> : boolean, <value2> : boolean) => boolean

Mantıksal AND işleci. Aynı durum &&.

  • and(true, false) -> false
  • true && false -> false

approxDistinctCount

approxDistinctCount(<value1> : any, [ <value2> : double ]) => long

Bir sütun için ayrı değerlerin yaklaşık toplam sayısını alır. İsteğe bağlı ikinci parametre, tahmin hatasını kontrol etmektir.

  • approxDistinctCount(ProductID, .05) => long

array

array([<value1> : any], ...) => array

Bir öğe dizisi oluşturur. Tüm öğeler aynı türde olmalı. Hiçbir öğe belirtilmezse, boş bir dize dizisi varsayılan değerdir. [] oluşturma işleciyle aynı.

  • array('Seattle', 'Washington')
  • ['Seattle', 'Washington']
  • ['Seattle', 'Washington'][1]
  • 'Washington'

asin

asin(<value1> : number) => double

Ters sinüs değerini hesaplar.

  • asin(0) -> 0.0

associate

reassociate(<value1> : map, <value2> : binaryFunction) => map

Anahtar/değer eşlemesi oluşturur. Tüm & aynı türde olması gerekir. Herhangi bir öğe belirtilmezse, varsayılan olarak dize türüyle dize eşlemesi kullanılır. Oluşturma [ -> ] işleciyle aynı. Anahtarlar ve değerler birbirinin yerine alternatif olarak ver değerlere sahip olmalı.

  • associate('fruit', 'apple', 'vegetable', 'carrot' )=> ['fruit' -> 'apple', 'vegetable' -> 'carrot']

at

at(<value1> : array/map, <value2> : integer/key type) => array

Dizi dizinindeki öğeyi bulur. Dizin 1 tabanlıdır. Sınırların dışında dizin null değerle sonuçlandı. Verilen anahtara sahip bir eşlemede bir değer bulur. Anahtar bulunamazsa null döndürür.

  • at(['apples', 'pears'], 1) => 'apples'
  • at(['fruit' -> 'apples', 'vegetable' -> 'carrot'], 'fruit') => 'apples'

atan

atan(<value1> : number) => double

Ters tanjgent değerini hesaplar.

  • atan(0) -> 0.0

atan2

atan2(<value1> : number, <value2> : number) => double

Bir düzlemin pozitif x ekseni ile koordinatlar tarafından verilen nokta arasındaki radyan açısını döndürür.

  • atan2(0, 0) -> 0.0

avg

avg(<value1> : number) => number

Bir sütunun değerlerinin ortalamasını alır.

  • avg(sales)

avgIf

avgIf(<value1> : boolean, <value2> : number) => number

Ölçütlere göre bir sütunun değerlerinin ortalamasını alır.

  • avgIf(region == 'West', sales)

between

between(<value1> : any, <value2> : any, <value3> : any) => boolean

İlk değerin dahil olmak için diğer iki değer arasında olup olamay olduğunu denetler. Sayısal, dize ve tarih saat değerleri karşılaştırıldı * between(10, 5, 24)

  • true
  • between(currentDate(), currentDate() + 10, currentDate() + 20)
  • false

bitwiseAnd

bitwiseAnd(<value1> : integral, <value2> : integral) => integral

İntegral türler arasında BitWise And işleci. İşleçle & aynı * bitwiseAnd(0xf4, 0xef)

  • 0xe4
  • (0xf4 & 0xef)
  • 0xe4

bitwiseOr

bitwiseOr(<value1> : integral, <value2> : integral) => integral

İntegral türler arasında BitWise Or işleci. Aynı şey | Işleç * bitwiseOr(0xf4, 0xef)

  • 0xff
  • (0xf4 | 0xef)
  • 0xff

bitwiseXor

bitwiseXor(<value1> : any, <value2> : any) => any

İntegral türler arasında BitWise Or işleci. Diğer | Işleç * bitwiseXor(0xf4, 0xef)

  • 0x1b
  • (0xf4 ^ 0xef)
  • 0x1b
  • (true ^ false)
  • true
  • (true ^ true)
  • false

blake2b

blake2b(<value1> : integer, <value2> : any, ...) => string

8 ile 512 arasında yalnızca 8'in katları olan bit uzunluğuna sahip çeşitli ilkel veri türlerine sahip olan sütun kümesine & hesaplar. Bir satır için parmak izini hesaplamak için kullanılabilir * blake2b(256, 'gunchus', 8.2, 'bojjus', true, toDate('2010-4-4'))

  • 'c9521a5080d8da30dffb430c50ce253c345cc4c4effc315dab2162dac974711d'

blake2bBinary

blake2bBinary(<value1> : integer, <value2> : any, ...) => binary

8 ile 512 arasında yalnızca 8'in katları olan bit uzunluğuna sahip çeşitli ilkel veri türlerine sahip olan sütun kümesine & hesaplar. Bir satır için parmak izini hesaplamak için kullanılabilir * blake2bBinary(256, 'gunchus', 8.2, 'bojjus', true, toDate('2010-4-4'))

  • unHex('c9521a5080d8da30dffb430c50ce253c345cc4c4effc315dab2162dac974711d')

byItem

byItem(<parent column> : any, <column name> : string) => any

Bir yapı veya yapı dizisi içinde bir alt öğe bulma Birden çok eşleşme varsa, ilk eşleşme döndürülür. Eşleşme yoksa NULL değer döndürür. Döndürülen değerin tür dönüştürme eylemlerinden biri tarafından dönüştürülmesi gerekir(? Tarih? string ...). Tasarım zamanında bilinen sütun adlarının yalnızca adlarıyla ele alınması gerekir. Hesaplanan girişler desteklenmiyor ancak parametre değiştirmelerini kullanabilirsiniz * byItem( byName('customer'), 'orderItems') ? (itemName as string, itemQty as integer)

  • byItem( byItem( byName('customer'), 'orderItems'), 'itemName') ? string

byName

byName(<column name> : string, [<stream name> : string]) => any

Akışta ad ile bir sütun değeri seçer. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçsiniz. Birden çok eşleşme varsa, ilk eşleşme döndürülür. Eşleşme yoksa NULL değer döndürür. Döndürülen değerin tür dönüştürme işlevlerinden biri (TO_DATE, TO_STRING ...) tarafından dönüştürülmesi gerekir. Tasarım zamanında bilinen sütun adlarının yalnızca adlarıyla ele alınması gerekir. Hesaplanan girişler desteklenmiyor ancak parametre değiştirmelerini kullanabilirsiniz.

  • toString(byName('parent'))
  • toLong(byName('income'))
  • toBoolean(byName('foster'))
  • toLong(byName($debtCol))
  • toString(byName('Bogus Column'))
  • toString(byName('Bogus Column', 'DeriveStream'))

byNames

byNames(<column names> : array, [<stream name> : string]) => any

Akışta ad ile bir sütun dizisi seçin. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçsiniz. Birden çok eşleşme varsa, ilk eşleşme döndürülür. Bir sütun için eşleşme yoksa, çıkışın tamamı NULL değerdir. Döndürülen değer bir tür dönüştürme işlevleri (toDate, toString, ...) gerektirir. Tasarım zamanında bilinen sütun adlarının yalnızca adlarıyla ele alınması gerekir. Hesaplanan girişler desteklenmiyor ancak parametre değiştirmelerini kullanabilirsiniz.

  • toString(byNames(['parent', 'child']))
  • byNames(['parent']) ? string
  • toLong(byNames(['income']))
  • byNames(['income']) ? long
  • toBoolean(byNames(['foster']))
  • toLong(byNames($debtCols))
  • toString(byNames(['a Column']))
  • toString(byNames(['a Column'], 'DeriveStream'))
  • byNames(['orderItem']) ? (itemName as string, itemQty as integer)

byOrigin

byOrigin(<column name> : string, [<origin stream name> : string]) => any

Kaynak akışta ad ile bir sütun değeri seçer. İkinci bağımsız değişken kaynak akış adıdır. Birden çok eşleşme varsa, ilk eşleşme döndürülür. Eşleşme yoksa NULL değer döndürür. Döndürülen değerin tür dönüştürme işlevlerinden biri (TO_DATE, TO_STRING ...) tarafından dönüştürülmesi gerekir. Tasarım zamanında bilinen sütun adlarının yalnızca adlarıyla ele alınması gerekir. Hesaplanan girişler desteklenmiyor ancak parametre değiştirmelerini kullanabilirsiniz.

  • toString(byOrigin('ancestor', 'ancestorStream'))

byOrigins

byOrigins(<column names> : array, [<origin stream name> : string]) => any

Akışta ad ile bir sütun dizisi seçer. İkinci bağımsız değişken, kaynağı olan akıştıdır. Birden çok eşleşme varsa, ilk eşleşme döndürülür. Eşleşme yoksa NULL değer döndürür. Döndürülen değerin tür dönüştürme işlevlerinden biri tarafından dönüştürülmesi gerekir (TO_DATE, TO_STRING ...) Tasarım zamanında bilinen sütun adlarının yalnızca adlarıyla ele alınması gerekir. Hesaplanan girişler desteklenmiyor ancak parametre değiştirmelerini kullanabilirsiniz.

  • toString(byOrigins(['ancestor1', 'ancestor2'], 'ancestorStream'))

byPath

byPath(<value1> : string, [<streamName> : string]) => any

Akışta adıyla hiyerarşik bir yol bulur. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçsiniz. Böyle bir yol bulunamazsa null döndürür. Tasarım zamanında bilinen sütun adları/yolları, yalnızca ad veya nokta nota yolu ile ele alınarak ele alınarak sağlanmaz. Hesaplanan girişler desteklenmiyor ancak parametre değiştirmelerini kullanabilirsiniz.

  • byPath('grandpa.parent.child') => column

byPosition

byPosition(<position> : integer) => any

Bir sütun değerini akışta göreli konuma (1 tabanlı) göre seçer. Konum sınır dışında ise NULL değer döndürür. Döndürülen değerin tür dönüştürme işlevlerinden biri tarafından dönüştürülmesi gerekir (TO_DATE, TO_STRING ...) Hesaplanan girişler desteklenmiyor ancak parametre değiştirmelerini kullanabilirsiniz.

  • toString(byPosition(1))
  • toDecimal(byPosition(2), 10, 2)
  • toBoolean(byName(4))
  • toString(byName($colName))
  • toString(byPosition(1234))

case

case(<condition> : boolean, <true_expression> : any, <false_expression> : any, ...) => any

Değişim koşullarına göre bir değer veya diğer değer uygulanır. Giriş sayısı birden fazla ise, son koşul için varsayılan olarak NULL değeri kullanılır.

  • case(10 + 20 == 30, 'dumbo', 'gumbo') -> 'dumbo'
  • case(10 + 20 == 25, 'bojjus', 'do' < 'go', 'gunchus') -> 'gunchus'
  • isNull(case(10 + 20 == 25, 'bojjus', 'do' > 'go', 'gunchus')) -> true
  • case(10 + 20 == 25, 'bojjus', 'do' > 'go', 'gunchus', 'dumbo') -> 'dumbo'

cbrt

cbrt(<value1> : number) => double

Bir sayının Küp kökünü hesaplar.

  • cbrt(8) -> 2.0

ceil

ceil(<value1> : number) => number

Sayıdan küçük olan en küçük tamsayıyı döndürür.

  • ceil(-0.1) -> 0

coalesce

coalesce(<value1> : any, ...) => any

Giriş kümesinden gelen ilk null değeri döndürür. Tüm girişler aynı türde olmalıdır.

  • coalesce(10, 20) -> 10
  • coalesce(toString(null), toString(null), 'dumbo', 'bo', 'go') -> 'dumbo'

collect

collect(<value1> : any) => array

Toplanan gruptaki ifadenin tüm değerlerini bir dizi olarak toplar. Bu işlem sırasında yapılar toplanabilir ve alternatif yapılara dönüştürülebilirler. Öğe sayısı bu gruptaki satır sayısına eşit olacak ve null değerler içerebilir. Toplanan öğe sayısı küçük olmalıdır.

  • collect(salesPerson)
  • collect(firstName + lastName))
  • collect(@(name = salesPerson, sales = salesAmount) )

columnNames

columnNames(<value1> : string) => array

Bir akışın tüm çıktı sütunlarının adlarını alır. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçirebilirsiniz.

  • columnNames()
  • columnNames('DeriveStream')

columns

columns([<stream name> : string]) => any

Bir akışın tüm çıktı sütunlarının değerlerini alır. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçirebilirsiniz.

  • columns()
  • columns('DeriveStream')

compare

compare(<value1> : any, <value2> : any) => integer

Aynı türdeki iki değeri karşılaştırır. Değer1 < değer2 ise negatif tamsayı döndürür, 0 if Değer1 = = değer2 ise pozitif değer, Eğer değer1 > değer2.

  • (compare(12, 24) < 1) -> true
  • (compare('dumbo', 'dum') > 0) -> true

concat

concat(<this> : string, <that> : string, ...) => string

Değişken sayıda dizeyi birlikte birleştirir. Dizelerle + işleciyle aynı.

  • concat('dataflow', 'is', 'awesome') -> 'dataflowisawesome'
  • 'dataflow' + 'is' + 'awesome' -> 'dataflowisawesome'
  • isNull('sql' + null) -> true

concatWS

concatWS(<separator> : string, <this> : string, <that> : string, ...) => string

Bir dizi dizeyi bir ayırıcıyla birlikte birleştirir. İlk parametre ayırıcıdır.

  • concatWS(' ', 'dataflow', 'is', 'awesome') -> 'dataflow is awesome'
  • isNull(concatWS(null, 'dataflow', 'is', 'awesome')) -> true
  • concatWS(' is ', 'dataflow', 'awesome') -> 'dataflow is awesome'

contains

contains(<value1> : array, <value2> : unaryfunction) => boolean

Belirtilen dizideki herhangi bir öğe, belirtilen koşulda doğru olarak değerlendiriliyorsa true değerini döndürür. Contains, koşul işlevindeki bir öğeye #item olarak bir başvuru bekliyor.

  • contains([1, 2, 3, 4], #item == 3) -> true
  • contains([1, 2, 3, 4], #item > 5) -> false

cos

cos(<value1> : number) => double

Bir kosinüs değeri hesaplar.

  • cos(10) -> -0.8390715290764524

cosh

cosh(<value1> : number) => double

Bir değerin hiperbolik kosinüsünü hesaplar.

  • cosh(0) -> 1.0

count

count([<value1> : any]) => long

Değerlerin toplam sayısını alır. İsteğe bağlı sütunlar belirtilmişse, sayımla NULL değerleri yoksayar.

  • count(custId)
  • count(custId, custName)
  • count()
  • count(iif(isNull(custId), 1, NULL))

countDistinct

countDistinct(<value1> : any, [<value2> : any], ...) => long

Bir sütun kümesinin farklı değerlerinin toplam sayısını alır.

  • countDistinct(custId, custName)

countIf

countIf(<value1> : boolean, [<value2> : any]) => long

Ölçütlere göre toplam değer sayısını alır. İsteğe bağlı sütun belirtilmişse, sayımla NULL değerleri yoksayar.

  • countIf(state == 'CA' && commission < 10000, name)

covariancePopulation

covariancePopulation(<value1> : number, <value2> : number) => double

İki sütun arasındaki popülasyon kovaryansını alır.

  • covariancePopulation(sales, profit)

covariancePopulationIf

covariancePopulationIf(<value1> : boolean, <value2> : number, <value3> : number) => double

Ölçütlere göre iki sütunun popülasyon kovaryansını alır.

  • covariancePopulationIf(region == 'West', sales)

covarianceSample

covarianceSample(<value1> : number, <value2> : number) => double

İki sütunun örnek kovaryansını alır.

  • covarianceSample(sales, profit)

covarianceSampleIf

covarianceSampleIf(<value1> : boolean, <value2> : number, <value3> : number) => double

Ölçütlere göre, iki sütunun örnek kovaryansını alır.

  • covarianceSampleIf(region == 'West', sales, profit)

crc32

crc32(<value1> : any, ...) => long

Yalnızca 0 (256), 224, 256, 384, 512 değerlerinin yer aldığı bir bit uzunluğu verilen, farklı ilkel veri türlerinin sütun kümesinin CRC32 karmasını hesaplar. Bir satır için parmak izini hesaplamak üzere kullanılabilir.

  • crc32(256, 'gunchus', 8.2, 'bojjus', true, toDate('2010-4-4')) -> 3630253689L

cumeDist

cumeDist() => integer

CumeDist işlevi, bir değerin bölüm içindeki tüm değerlere göre konumunu hesaplar. Sonuç, Bölüm sıralamasına göre geçerli satıra göre veya buna eşit olan satır sayısıdır ve pencere bölümündeki toplam satır sayısı ile ayrılır. Sıralamada bulunan tüm bağlama değerleri aynı konuma göre değerlendirilir.

  • cumeDist()

currentDate

currentDate([<value1> : string]) => date

Bu işin çalışmaya başladığı geçerli tarihi alır. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Yerel Saat dilimi varsayılan olarak kullanılır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

  • currentDate() == toDate('2250-12-31') -> false
  • currentDate('PST') == toDate('2250-12-31') -> false
  • currentDate('America/New_York') == toDate('2250-12-31') -> false

currentTimestamp

currentTimestamp() => timestamp

İş yerel saat dilimiyle çalışmaya başladığında geçerli zaman damgasını alır.

  • currentTimestamp() == toTimestamp('2250-12-31 12:12:12') -> false

currentUTC

currentUTC([<value1> : string]) => timestamp

Geçerli zaman damgasını UTC olarak alır. Geçerli saatin, küme saat diliminizdeki farklı bir saat diliminde yorumlanması istiyorsanız, isteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Varsayılan olarak geçerli saat dilimine ayarlanır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html. UTC saatini farklı bir saat dilimi kullanımına dönüştürmek için fromUTC() .

  • currentUTC() == toTimestamp('2050-12-12 19:18:12') -> false
  • currentUTC() != toTimestamp('2050-12-12 19:18:12') -> true
  • fromUTC(currentUTC(), 'Asia/Seoul') != toTimestamp('2050-12-12 19:18:12') -> true

dayOfMonth

dayOfMonth(<value1> : datetime) => integer

Tarih verilen tarihin gününü alır.

  • dayOfMonth(toDate('2018-06-08')) -> 8

dayOfWeek

dayOfWeek(<value1> : datetime) => integer

Bir tarih verilen haftanın gününü alır. 1-Pazar, 2-Pazartesi..., 7-Cumartesi.

  • dayOfWeek(toDate('2018-06-08')) -> 6

dayOfYear

dayOfYear(<value1> : datetime) => integer

Yıl verilen tarihin gününü alır.

  • dayOfYear(toDate('2016-04-09')) -> 100

days

days(<value1> : integer) => long

Gün sayısı için milisaniye cinsinden süre.

  • days(2) -> 172800000L

degrees

degrees(<value1> : number) => double

Radyanı dereceye dönüştürür.

  • degrees(3.141592653589793) -> 180

denseRank

denseRank() => integer

Bir pencerenin order by yan tümcesinde belirtilen bir değer grubundaki bir değerin derecesini hesaplar. Sonuç, Bölüm sıralamasına göre geçerli satırdan önceki veya eşit olan satır sayısıdır. Değerler dizide boşluk üretmeyecektir. Yoğun sıralama, veriler sıralanmasa bile ve değerlerde değişiklik ararken bile kullanılır.

  • denseRank()

distinct

distinct(<value1> : array) => array

Bir diziden ayrı bir öğe kümesi döndürür.

  • distinct([10, 20, 30, 10]) => [10, 20, 30]

divide

divide(<value1> : any, <value2> : any) => any

Sayı çiftini böler. /İşleçle aynıdır.

  • divide(20, 10) -> 2
  • 20 / 10 -> 2

dropLeft

dropLeft(<value1> : string, <value2> : integer) => string

Dizenin solundaki sayıda karakteri kaldırır. İstenen bırakma, dizenin uzunluğunu aşarsa boş bir dize döndürülür.

  • dropLeft (' bojjus ', 2) => ' jjus ' * damlacısol (' pasta ', 10) => ' ' ___

dropRight

dropRight(<value1> : string, <value2> : integer) => string

Dizenin sağından çok sayıda karakter kaldırır. İstenen bırakma, dizenin uzunluğunu aşarsa boş bir dize döndürülür.

  • dropRight (' bojjus ', 2) => ' bojj ' * dropriül (' pasta ', 10) => ' ' ___

endsWith

endsWith(<string> : string, <substring to check> : string) => boolean

Dizenin belirtilen dize ile bitip bitmediğini denetler.

  • endsWith('dumbo', 'mbo') -> true

equals

equals(<value1> : any, <value2> : any) => boolean

Karşılaştırma eşittir işleci. = = İşleci ile aynı.

  • equals(12, 24) -> false
  • 12 == 24 -> false
  • 'bad' == 'bad' -> true
  • isNull('good' == toString(null)) -> true
  • isNull(null == null) -> true

equalsIgnoreCase

equalsIgnoreCase(<value1> : string, <value2> : string) => boolean

Karşılaştırma eşittir işleci büyük/küçük harf yok sayılıyor. <=> işleci ile aynı.

  • 'abc'<=>'Abc' -> true
  • equalsIgnoreCase('abc', 'Abc') -> true

escape

escape(<string_to_escape> : string, <format> : string) => string

Bir dizeyi bir biçime göre çıkar. Kabul edilebilir biçim için değişmez değerler ' JSON ', ' XML ', ' ECMAScript ', ' HTML ', ' Java ' değerleridir.


except

except(<value1> : array, <value2> : array) => array

Başka bir bırakma yinelemelerine sahip bir dizinin fark kümesini döndürür.

  • except([10, 20, 30], [20, 40]) => [10, 30]

expr

expr(<expr> : string) => any

Bir dizeden bir ifade sonucu oluşur. Bu ifade, değişmez değer olmayan bir biçimde yazılmasında aynıdır. Bu, parametreleri dize gösterimleri olarak geçirmek için kullanılabilir.

  • Expr (' Price * indirim ') => any ___

factorial

factorial(<value1> : number) => long

Bir sayının faktöriyelini hesaplar.

  • factorial(5) -> 120

false

false() => boolean

Her zaman yanlış bir değer döndürür. syntax(false())' False ' adlı bir sütun varsa, işlevini kullanın.

  • (10 + 20 > 30) -> false
  • (10 + 20 > 30) -> false()

filter

filter(<value1> : array, <value2> : unaryfunction) => array

Öğeleri, belirtilen koşulu karşılamayan dizinin dışına filtreler. Filtre, koşul işlevindeki bir öğeye #item olarak bir başvuru bekliyor.

  • filter([1, 2, 3, 4], #item > 2) -> [3, 4]
  • filter(['a', 'b', 'c', 'd'], #item == 'a' || #item == 'b') -> ['a', 'b']

find

find(<value1> : array, <value2> : unaryfunction) => any

Koşulla eşleşen bir diziden ilk öğeyi bulun. Dizideki öğeyi #item olarak adresleyebileceğiniz bir filtre işlevi alır. Derin iç içe haritalar için #item_n (#item_1, #item_2...) gösterimini kullanarak üst haritalara başvurabilirsiniz.

  • find([10, 20, 30], #item > 10) -> 20
  • find(['azure', 'data', 'factory'], length(#item) > 4) -> 'azure'
  • find([ @( name = 'Daniel', types = [ @(mood = 'jovial', behavior = 'terrific'), @(mood = 'grumpy', behavior = 'bad') ] ), @( name = 'Mark', types = [ @(mood = 'happy', behavior = 'awesome'), @(mood = 'calm', behavior = 'reclusive') ] ) ], contains(#item.types, #item.mood=='happy') /*Filter out the happy kid*/ )
  • @( name = 'Mark', types = [ @(mood = 'happy', behavior = 'awesome'), @(mood = 'calm', behavior = 'reclusive') ] )

* @( name = 'Mark', types = [ @(mood = 'happy', behavior = 'awesome'), @(mood = 'calm', behavior = 'reclusive') ] )


first

first(<value1> : any, [<value2> : boolean]) => any

Bir sütun grubunun ilk değerini alır. IgnoreNulls ikinci parametresi atlanırsa, false olarak kabul edilir.

  • first(sales)
  • first(sales, false)

flatten

flatten(<array> : array, <value2> : array ..., <value2> : boolean) => array

Diziyi veya dizileri tek bir dizide düzleştirir. Atomik öğe dizileri değiştirilmemiş olarak döndürülür. Son bağımsız değişken isteğe bağlıdır ve yinelemeli olarak birden çok düzey derin düzleştirmek için false olarak ayarlanır.

  • flatten([['bojjus', 'girl'], ['gunchus', 'boy']]) => ['bojjus', 'girl', 'gunchus', 'boy']
  • flatten([[['bojjus', 'gunchus']]] , true) => ['bojjus', 'gunchus']

floor

floor(<value1> : number) => number

Sayıdan büyük olan en büyük tamsayıyı döndürür.

  • floor(-0.1) -> -1

fromBase64

fromBase64(<value1> : string) => string

Verilen Base64 kodlamalı dizenin kodunu çözer.

  • fromBase64('Z3VuY2h1cw==') -> 'gunchus'

fromUTC

fromUTC(<value1> : timestamp, [<value2> : string]) => timestamp

UTC 'den zaman damgasına dönüştürür. İsteğe bağlı olarak, saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Varsayılan olarak geçerli saat dilimine ayarlanır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

  • fromUTC(currentTimestamp()) == toTimestamp('2050-12-12 19:18:12') -> false
  • fromUTC(currentTimestamp(), 'Asia/Seoul') != toTimestamp('2050-12-12 19:18:12') -> true

greater

greater(<value1> : any, <value2> : any) => boolean

Karşılaştırma daha büyük işleci. > işleçle aynı.

  • greater(12, 24) -> false
  • ('dumbo' > 'dum') -> true
  • (toTimestamp('2019-02-05 08:21:34.890', 'yyyy-MM-dd HH:mm:ss.SSS') > toTimestamp('2019-02-03 05:19:28.871', 'yyyy-MM-dd HH:mm:ss.SSS')) -> true

greaterOrEqual

greaterOrEqual(<value1> : any, <value2> : any) => boolean

Karşılaştırma daha büyük veya eşit işleç. >= işleci ile aynı.

  • greaterOrEqual(12, 12) -> true
  • ('dumbo' >= 'dum') -> true

greatest

greatest(<value1> : any, ...) => any

Giriş null değerlerini atlayarak değer listesi arasındaki en büyük değeri döndürür. Tüm girişler null ise null döndürür.

  • greatest(10, 30, 15, 20) -> 30
  • greatest(10, toInteger(null), 20) -> 20
  • greatest(toDate('2010-12-12'), toDate('2011-12-12'), toDate('2000-12-12')) -> toDate('2011-12-12')
  • greatest(toTimestamp('2019-02-03 05:19:28.871', 'yyyy-MM-dd HH:mm:ss.SSS'), toTimestamp('2019-02-05 08:21:34.890', 'yyyy-MM-dd HH:mm:ss.SSS')) -> toTimestamp('2019-02-05 08:21:34.890', 'yyyy-MM-dd HH:mm:ss.SSS')

hasColumn

hasColumn(<column name> : string, [<stream name> : string]) => boolean

Akıştaki ada göre bir sütun değeri olup olmadığını denetler. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçirebilirsiniz. Tasarım zamanında bilinen sütun adları yalnızca adına göre değinmelidir. Hesaplanan girişler desteklenmez, ancak parametre değiştirmeler ' i kullanabilirsiniz.

  • hasColumn('parent')

hasPath

hasPath(<value1> : string, [<streamName> : string]) => boolean

Akıştaki ada göre belirli bir hiyerarşik yolun var olup olmadığını denetler. İkinci bağımsız değişken olarak isteğe bağlı bir akış adı geçirebilirsiniz. Tasarım zamanında bilinen sütun adları/yolları yalnızca adına veya nokta gösterim yoluna göre yapılmalıdır. Hesaplanan girişler desteklenmez, ancak parametre değiştirmeler ' i kullanabilirsiniz.

  • hasPath('grandpa.parent.child') => boolean

hex

hex(<value1>: binary) => string

İkili değerin onaltılı dize gösterimini döndürür * hex(toBinary([toByte(0x1f), toByte(0xad), toByte(0xbe)])) -> '1fadbe'


hour

hour(<value1> : timestamp, [<value2> : string]) => integer

Bir zaman damgasının saat değerini alır. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Yerel Saat dilimi varsayılan olarak kullanılır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

  • hour(toTimestamp('2009-07-30 12:58:59')) -> 12
  • hour(toTimestamp('2009-07-30 12:58:59'), 'PST') -> 12

hours

hours(<value1> : integer) => long

Saat sayısı için milisaniye cinsinden süre.

  • hours(2) -> 7200000L

iif

iif(<condition> : boolean, <true_expression> : any, [<false_expression> : any]) => any

Bir koşula bağlı olarak bir değer veya diğerini uygular. Diğeri belirtilmemişse NULL kabul edilir. Her iki değer de uyumlu olmalıdır (sayısal, dize...). * iif(10 + 20 == 30, 'dumbo', 'gumbo') -> 'dumbo'

  • iif(10 > 30, 'dumbo', 'gumbo') -> 'gumbo'
  • iif(month(toDate('2018-12-01')) == 12, 345.12, 102.67) -> 345.12

iifNull

iifNull(<value1> : any, [<value2> : any], ...) => any

İlk parametrenin null olup olmadığını denetler. Null değilse, ilk parametre döndürülür. Null ise, ikinci parametre döndürülür. Üç parametre belirtilirse, (IsNull (değer1), değer2, value3) ve ilk değer null değilse üçüncü parametre döndürülür.

  • iifNull(10, 20) -> 10
  • iifNull(null, 20, 40) -> 20
  • iifNull('azure', 'data', 'factory') -> 'factory'
  • iifNull(null, 'data', 'factory') -> 'data'

in

in(<array of items> : array, <item to find> : any) => boolean

Dizide bir öğe olup olmadığını denetler.

  • in([10, 20, 30], 10) -> true
  • in(['good', 'kid'], 'bad') -> false

initCap

initCap(<value1> : string) => string

Her sözcüğün ilk harfini büyük harfe dönüştürür. Sözcükler boşluk ile ayrılmış şekilde tanımlanır.

  • initCap('cool iceCREAM') -> 'Cool Icecream'

instr

instr(<string> : string, <substring to find> : string) => integer

Bir dize içindeki alt dizenin konumunu (1 tabanlı) bulur. 0 bulunamazsa döndürülür.

  • instr('dumbo', 'mbo') -> 3
  • instr('microsoft', 'o') -> 5
  • instr('good', 'bad') -> 0

intersect

intersect(<value1> : array, <value2> : array) => array

2 dizideki ayrı öğelerin kesişmesi kümesini döndürür.

  • intersect([10, 20, 30], [20, 40]) => [20]

isBitSet

isBitSet (<value1> : array, <value2>:integer ) => boolean

Bu bit kümesinde bir bit konumunun ayarlanmış olup olmadığını denetler * isBitSet(toBitSet([10, 32, 98]), 10) => true


isBoolean

isBoolean(<value1>: string) => boolean

Dize değerinin, kurallarına göre bir Boole değeri olup olmadığını denetler. toBoolean()

  • isBoolean('true') -> true
  • isBoolean('no') -> true
  • isBoolean('microsoft') -> false

isByte

isByte(<value1> : string) => boolean

Dize değerinin, kurala göre isteğe bağlı bir biçim verilen bir bayt değeri olup olmadığını denetler. toByte()

  • isByte('123') -> true
  • isByte('chocolate') -> false

isDate

isDate (<value1> : string, [<format>: string]) => boolean

Giriş Tarih dizesinin, isteğe bağlı bir giriş tarihi biçimi kullanarak tarih olup olmadığını denetler. Kullanılabilir biçimler için Java 'nın SimpleDateFormat bölümüne bakın. Giriş tarihi biçimi atlanırsa varsayılan biçim olur yyyy-[M]M-[d]d . Kabul edilen biçimler şunlardır [ yyyy, yyyy-[M]M, yyyy-[M]M-[d]d, yyyy-[M]M-[d]dT* ]

  • isDate('2012-8-18') -> true
  • isDate('12/18--234234' -> 'MM/dd/yyyy') -> false

isDecimal

isDecimal (<value1> : string) => boolean

Dize değeri denetimleri, şu kurallara göre isteğe bağlı biçim verilen bir ondalık değerdir. toDecimal()

  • isDecimal('123.45') -> true
  • isDecimal('12/12/2000') -> false

isDelete

isDelete([<value1> : integer]) => boolean

Satırın silme için işaretlenip işaretlenmediğini denetler. Birden fazla giriş akışı alan dönüşümler için akışın (1 tabanlı) dizinini geçirebilirsiniz. Akış dizini 1 veya 2 olmalıdır ve varsayılan değer 1 ' dir.

  • isDelete()
  • isDelete(1)

isDistinct

isDistinct(<value1> : any , <value1> : any) => boolean

Bir sütun veya sütun kümesinin farklı olup olmadığını bulur. Farklı bir değer olarak null sayılmaz * isDistinct(custId, custName) => boolean


isDouble

isDouble (<value1> : string, [<format>: string]) => boolean

Dize değeri denetimleri, şu kurallara göre isteğe bağlı biçim verilen bir Double değeridir toDouble()

  • isDouble('123') -> true
  • isDouble('$123.45' -> '$###.00') -> true
  • isDouble('icecream') -> false

isError

isError([<value1> : integer]) => boolean

Satırın hata olarak işaretlenip işaretlenmediğini denetler. Birden fazla giriş akışı alan dönüşümler için akışın (1 tabanlı) dizinini geçirebilirsiniz. Akış dizini 1 veya 2 olmalıdır ve varsayılan değer 1 ' dir.

  • isError()
  • isError(1)

isFloat

isFloat (<value1> : string, [<format>: string]) => boolean

Dize değeri denetimleri, şu kurallara göre isteğe bağlı biçim verilen bir float değeridir toFloat()

  • isFloat('123') -> true
  • isFloat('$123.45' -> '$###.00') -> true
  • isFloat('icecream') -> false

isIgnore

isIgnore([<value1> : integer]) => boolean

Satırın yok sayılacak şekilde işaretlenip işaretlenmediğini denetler. Birden fazla giriş akışı alan dönüşümler için akışın (1 tabanlı) dizinini geçirebilirsiniz. Akış dizini 1 veya 2 olmalıdır ve varsayılan değer 1 ' dir.

  • isIgnore()
  • isIgnore(1)

isInsert

isInsert([<value1> : integer]) => boolean

Satırın ekleme için işaretlenip işaretlenmediğini denetler. Birden fazla giriş akışı alan dönüşümler için akışın (1 tabanlı) dizinini geçirebilirsiniz. Akış dizini 1 veya 2 olmalıdır ve varsayılan değer 1 ' dir.

  • isInsert()
  • isInsert(1)

isInteger

isInteger (<value1> : string, [<format>: string]) => boolean

Dize değeri denetimleri, şu kurallara göre isteğe bağlı biçim verilen bir tamsayı değeridir. toInteger()

  • isInteger('123') -> true
  • isInteger('$123' -> '$###') -> true
  • isInteger('microsoft') -> false

isLong

isLong (<value1> : string, [<format>: string]) => boolean

Dize değerinin denetimleri, şu kurallara göre isteğe bağlı bir biçim verilen bir Long değeridir toLong()

  • isLong('123') -> true
  • isLong('$123' -> '$###') -> true
  • isLong('gunchus') -> false

isMatch

isMatch([<value1> : integer]) => boolean

Arama sırasında satırın eşleşip eşleşmediğini denetler. Birden fazla giriş akışı alan dönüşümler için akışın (1 tabanlı) dizinini geçirebilirsiniz. Akış dizini 1 veya 2 olmalıdır ve varsayılan değer 1 ' dir.

  • isMatch()
  • isMatch(1)

isNan

isNan (<value1> : integral) => boolean

Bunun bir sayı olup olmadığını denetleyin.

  • isNan(10.2) => false

isNull

isNull(<value1> : any) => boolean

Değerin NULL olup olmadığını denetler.

  • isNull(NULL()) -> true
  • isNull('') -> false

isShort

isShort (<value1> : string, [<format>: string]) => boolean

Dize değeri denetimleri, şu kurallara göre isteğe bağlı bir biçim verilen kısa bir değerdir toShort()

  • isShort('123') -> true
  • isShort('$123' -> '$###') -> true
  • isShort('microsoft') -> false

isTimestamp

isTimestamp (<value1> : string, [<format>: string]) => boolean

Giriş Tarih dizesinin, isteğe bağlı bir giriş zaman damgası biçimi kullanarak bir zaman damgası olup olmadığını denetler. Kullanılabilir biçimler için Java 'nın SimpleDateFormat bölümüne bakın. Zaman damgası atlanırsa varsayılan model yyyy-[M]M-[d]d hh:mm:ss[.f...] kullanılır. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Zaman damgası, 999 değeri ile en fazla milisaniyeye kadar doğruluğu destekler ve kullanılabilir biçimler için Java 'nın SimpleDateFormat öğesine bakın.

  • isTimestamp('2016-12-31 00:12:00') -> true
  • isTimestamp('2016-12-31T00:12:00' -> 'yyyy-MM-dd\\'T\\'HH:mm:ss' -> 'PST') -> true
  • isTimestamp('2012-8222.18') -> false

isUpdate

isUpdate([<value1> : integer]) => boolean

Satırın güncelleştirme için işaretlenip işaretlenmediğini denetler. Birden fazla giriş akışı alan dönüşümler için akışın (1 tabanlı) dizinini geçirebilirsiniz. Akış dizini 1 veya 2 olmalıdır ve varsayılan değer 1 ' dir.

  • isUpdate()
  • isUpdate(1)

isUpsert

isUpsert([<value1> : integer]) => boolean

Satırın ekleme için işaretlenip işaretlenmediğini denetler. Birden fazla giriş akışı alan dönüşümler için akışın (1 tabanlı) dizinini geçirebilirsiniz. Akış dizini 1 veya 2 olmalıdır ve varsayılan değer 1 ' dir.

  • isUpsert()
  • isUpsert(1)

jaroWinkler

jaroWinkler(<value1> : string, <value2> : string) => double

İki dize arasındaki JaroWinkler uzaklığını alır.

  • jaroWinkler('frog', 'frog') => 1.0

keyValues

keyValues(<value1> : array, <value2> : array) => map

Anahtar/değer haritası oluşturur. İlk parametre bir anahtarlar dizisidir ve ikinci değer dizisidir. Her iki dizi da eşit uzunluğa sahip olmalıdır.

  • keyValues(['bojjus', 'appa'], ['gunchus', 'ammi']) => ['bojjus' -> 'gunchus', 'appa' -> 'ammi']

kurtosis

kurtosis(<value1> : number) => double

Bir sütunun basıklığını alır.

  • kurtosis(sales)

kurtosisIf

kurtosisIf(<value1> : boolean, <value2> : number) => double

Ölçütlere göre bir sütunun basıklığını alır.

  • kurtosisIf(region == 'West', sales)

lag

lag(<value> : any, [<number of rows to look before> : number], [<default value> : any]) => any

Geçerli satırdan önce değerlendirilen n satıra ilk parametre değerini alır. İkinci parametre, geri aranacak satır sayısıdır ve varsayılan değer 1 ' dir. Çok sayıda satır yoksa, varsayılan değer belirtilmediği sürece null değeri döndürülür.

  • lag(amount, 2)
  • lag(amount, 2000, 100)

last

last(<value1> : any, [<value2> : boolean]) => any

Bir sütun grubunun son değerini alır. IgnoreNulls ikinci parametresi atlanırsa, false olarak kabul edilir.

  • last(sales)
  • last(sales, false)

lastDayOfMonth

lastDayOfMonth(<value1> : datetime) => date

Tarih verilen ayın son tarihini alır.

  • lastDayOfMonth(toDate('2009-01-12')) -> toDate('2009-01-31')

lead

lead(<value> : any, [<number of rows to look after> : number], [<default value> : any]) => any

Geçerli satırdan sonra değerlendirilen n satıra ilk parametre değerini alır. İkinci parametre, görüntülenecek satır sayısı ve varsayılan değer 1 ' dir. Çok sayıda satır yoksa, varsayılan değer belirtilmediği sürece null değeri döndürülür.

  • lead(amount, 2)
  • lead(amount, 2000, 100)

least

least(<value1> : any, ...) => any

Karşılaştırma küçüktür veya eşittir işleci. <= işleci ile aynı.

  • least(10, 30, 15, 20) -> 10
  • least(toDate('2010-12-12'), toDate('2011-12-12'), toDate('2000-12-12')) -> toDate('2000-12-12')

left

left(<string to subset> : string, <number of characters> : integral) => string

Dizin 1 ' den karakter sayısı ile başlayan bir alt dize ayıklar. Alt DIZEYLE aynı (Str, 1, n).

  • left('bojjus', 2) -> 'bo'
  • left('bojjus', 20) -> 'bojjus'

length

length(<value1> : string) => integer

Dizenin uzunluğunu döndürür.

  • length('dumbo') -> 5

lesser

lesser(<value1> : any, <value2> : any) => boolean

Karşılaştırma daha az işleci. < işleçle aynı.

  • lesser(12, 24) -> true
  • ('abcd' < 'abc') -> false
  • (toTimestamp('2019-02-03 05:19:28.871', 'yyyy-MM-dd HH:mm:ss.SSS') < toTimestamp('2019-02-05 08:21:34.890', 'yyyy-MM-dd HH:mm:ss.SSS')) -> true

lesserOrEqual

lesserOrEqual(<value1> : any, <value2> : any) => boolean

Karşılaştırma küçüktür veya eşittir işleci. <= işleci ile aynı.

  • lesserOrEqual(12, 12) -> true
  • ('dumbo' <= 'dum') -> false

levenshtein

levenshtein(<from string> : string, <to string> : string) => integer

İki dize arasındaki mesafeyi alır.

  • levenshtein('boys', 'girls') -> 4

like

like(<string> : string, <pattern match> : string) => boolean

Bu, tam anlamıyla eşleşen bir dizedir. Özel durumlar aşağıdaki özel sembollerdir: _, girişte bir karakter ile eşleşir (şuna benzer. posixnormal ifadelerde)%, girişte sıfır veya daha fazla karakterle eşleşir (normal ifadelerde. * ile benzerdir posix ). Kaçış karakteri ' '. Bir kaçış karakteri özel bir sembolden veya başka bir kaçış karakteriyle önceyse, aşağıdaki karakter tam anlamıyla eşleştirilir. Başka bir karakter kaçış geçersizdir.

  • like('icecream', 'ice%') -> true

locate

locate(<substring to find> : string, <string> : string, [<from index - 1-based> : integral]) => integer

Belirli bir konumu Başlatan bir dize içindeki alt dizenin konumunu (1 tabanlı) bulur. Konum atlanırsa, dizenin başından hesaba göre değerlendirilir. 0 bulunamazsa döndürülür.

  • locate('mbo', 'dumbo') -> 3
  • locate('o', 'microsoft', 6) -> 7
  • locate('bad', 'good') -> 0

log

log(<value1> : number, [<value2> : number]) => double

Günlük değerini hesaplar. İsteğe bağlı bir taban, kullanıldıysa bir Euler numarası sağlanabilir.

  • log(100, 10) -> 2

log10

log10(<value1> : number) => double

Günlük değerini 10 tabanına göre hesaplar.

  • log10(100) -> 2

lookup

lookup(key, key2, ...) => complex[]

Önbelleğe alınan havuzlardaki anahtarlarla eşleşen anahtarları kullanarak önbelleğe alınan havuzun ilk satırını arar.

  • cacheSink#lookup(movieId)

lower

lower(<value1> : string) => string

Küçük harf, bir dize.

  • lower('GunChus') -> 'gunchus'

lpad

lpad(<string to pad> : string, <final padded length> : integral, <padding> : string) => string

Belirli bir uzunluğa ulaşana kadar dizeyi sağlanan doldurmaya göre aşağı doğru doldurma. Dize uzunluğuna eşit veya daha büyük ise, bu, uzunluğa atılır.

  • lpad('dumbo', 10, '-') -> '-----dumbo'
  • lpad('dumbo', 4, '-') -> 'dumb'
  • ' ' Lpad (' Dumbo ', 8, ' <> ')-> ' <><dumbo'``

ltrim

ltrim(<string to trim> : string, [<trim characters> : string]) => string

Sol karakterlerin bir dizesini sola kırpar. İkinci parametre belirtilmemişse boşluğu kırpar. Aksi takdirde, ikinci parametrede belirtilen herhangi bir karakteri kırpar.

  • ltrim(' dumbo ') -> 'dumbo '
  • ltrim('!--!du!mbo!', '-!') -> 'du!mbo!'

map

map(<value1> : array, <value2> : unaryfunction) => any

dizideki her öğeyi, belirtilen ifadeyi kullanarak yeni bir öğeye Haritalar. Eşleme, ifade işlevindeki bir öğeye #item olarak bir başvuru bekliyor.

  • map([1, 2, 3, 4], #item + 2) -> [3, 4, 5, 6]
  • map(['a', 'b', 'c', 'd'], #item + '_processed') -> ['a_processed', 'b_processed', 'c_processed', 'd_processed']

mapAssociation

mapAssociation(<value1> : map, <value2> : binaryFunction) => array

Anahtarları yeni değerlerle ilişkilendirerek Haritayı dönüştürür. Bir dizi döndürür. Öğeyi #key ve geçerli değeri #value olarak adreslebileceğiniz bir eşleme işlevi alır.

  • mapAssociation(['bojjus' -> 'gunchus', 'appa' -> 'ammi'], @(key = #key, value = #value)) => [@(key = 'bojjus', value = 'gunchus'), @(key = 'appa', value = 'ammi')]

mapIf

mapIf (<value1> : array, <value2> : binaryfunction, <value3>: binaryFunction) => any

Bir diziyi, aynı veya daha küçük uzunlukta bir başka diziye koşullu olarak eşleştirir. Değerler, structTypes dahil olmak üzere herhangi bir veri türü olabilir. Dizideki öğeyi #item ve geçerli dizin #index olarak adreslebileceğiniz bir eşleme işlevi alır. Derin iç içe haritalar için, gösterimi kullanarak üst haritalara başvurabilirsiniz #item_[n](#item_1, #index_1...) .

  • mapIf([10, 20, 30], #item > 10, #item + 5) -> [25, 35]
  • mapIf(['icecream', 'cake', 'soda'], length(#item) > 4, upper(#item)) -> ['ICECREAM', 'CAKE']

mapIndex

mapIndex(<value1> : array, <value2> : binaryfunction) => any

dizideki her öğeyi, belirtilen ifadeyi kullanarak yeni bir öğeye Haritalar. Map, #item ifade işlevindeki bir öğeye başvuru ve #index olarak öğe dizinine başvuru bekliyor.

  • mapIndex([1, 2, 3, 4], #item + 2 + #index) -> [4, 6, 8, 10]

mapLoop

mapLoop(<value1> : integer, <value2> : unaryfunction) => any

Bu uzunlukta bir dizi oluşturmak için 1 ila uzunluğuna kadar döngü. Dizideki dizine #index olarak adreslebileceğiniz bir eşleme işlevi alır. Derin iç içe haritalar için #index_n (#index_1, #index_2...) gösterimini kullanarak üst haritalara başvurabilirsiniz.

  • mapLoop(3, #index * 10) -> [10, 20, 30]

max

max(<value1> : any) => any

Bir sütunun en büyük değerini alır.

  • max(sales)

maxIf

maxIf(<value1> : boolean, <value2> : any) => any

Ölçütlere göre, bir sütunun en büyük değerini alır.

  • maxIf(region == 'West', sales)

md5

md5(<value1> : any, ...) => string

Farklı ilkel veri türlerinin sütun kümesinin MD5 özetini hesaplar ve 32 karakter onaltılı dize döndürür. Bir satır için parmak izini hesaplamak üzere kullanılabilir.

  • md5(5, 'gunchus', 8.2, 'bojjus', true, toDate('2010-4-4')) -> '4ce8a880bd621a1ffad0bca905e1bc5a'

mean

mean(<value1> : number) => number

Bir sütunun değerlerinin ortalama değerini alır. AVG ile aynı.

  • mean(sales)

meanIf

meanIf(<value1> : boolean, <value2> : number) => number

Ölçütlere dayalı olarak bir sütunun değerlerinin ortalaması alınır. AvgIf ile aynı.

  • meanIf(region == 'West', sales)

millisecond

millisecond(<value1> : timestamp, [<value2> : string]) => integer

Bir tarihin milisaniyelik değerini alır. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Yerel Saat dilimi varsayılan olarak kullanılır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

  • millisecond(toTimestamp('2009-07-30 12:58:59.871', 'yyyy-MM-dd HH:mm:ss.SSS')) -> 871

milliseconds

milliseconds(<value1> : integer) => long

Milisaniye cinsinden milisaniye cinsinden süre.

  • milliseconds(2) -> 2L

min

min(<value1> : any) => any

Bir sütunun en küçük değerini alır.

  • min(sales)

minIf

minIf(<value1> : boolean, <value2> : any) => any

Ölçütlere göre, bir sütunun en küçük değerini alır.

  • minIf(region == 'West', sales)

minus

minus(<value1> : any, <value2> : any) => any

Sayıları çıkartır. Bir tarihten itibaren gün sayısını çıkar. Zaman damgasından çıkarma süresi. Milisaniye cinsinden farkları almak için iki zaman damgasını çıkarın. -İşleci ile aynıdır.

  • minus(20, 10) -> 10
  • 20 - 10 -> 10
  • minus(toDate('2012-12-15'), 3) -> toDate('2012-12-12')
  • toDate('2012-12-15') - 3 -> toDate('2012-12-12')
  • toTimestamp('2019-02-03 05:19:28.871', 'yyyy-MM-dd HH:mm:ss.SSS') + (days(1) + hours(2) - seconds(10)) -> toTimestamp('2019-02-04 07:19:18.871', 'yyyy-MM-dd HH:mm:ss.SSS')
  • toTimestamp('2019-02-03 05:21:34.851', 'yyyy-MM-dd HH:mm:ss.SSS') - toTimestamp('2019-02-03 05:21:36.923', 'yyyy-MM-dd HH:mm:ss.SSS') -> -2072

minute

minute(<value1> : timestamp, [<value2> : string]) => integer

Bir zaman damgasının dakika değerini alır. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Yerel Saat dilimi varsayılan olarak kullanılır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

  • minute(toTimestamp('2009-07-30 12:58:59')) -> 58
  • minute(toTimestamp('2009-07-30 12:58:59'), 'PST') -> 58

minutes

minutes(<value1> : integer) => long

Milisaniye cinsinden dakika sayısı.

  • minutes(2) -> 120000L

mlookup

mlookup(key, key2, ...) => complex[]

Önbelleğe alınan havuzlardaki anahtarlarla eşleşen anahtarları kullanarak, önbelleğe alınmış havuzda bulunan tüm eşleşen satırları arar.

  • cacheSink#mlookup(movieId)

mod

mod(<value1> : any, <value2> : any) => any

Sayı çiftinin mod sayısı. % İşleci ile aynı.

  • mod(20, 8) -> 4
  • 20 % 8 -> 4

month

month(<value1> : datetime) => integer

Tarih veya zaman damgasının ay değerini alır.

  • month(toDate('2012-8-8')) -> 8

monthsBetween

monthsBetween(<from date/timestamp> : datetime, <to date/timestamp> : datetime, [<roundoff> : boolean], [<time zone> : string]) => double

İki tarih arasındaki ay sayısını alır. Hesaplamayı yuvarlayaseçebilirsiniz. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Yerel Saat dilimi varsayılan olarak kullanılır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

  • monthsBetween(toTimestamp('1997-02-28 10:30:00'), toDate('1996-10-30')) -> 3.94959677

multiply

multiply(<value1> : any, <value2> : any) => any

Sayı çiftini çarpar. * İşleciyle aynıdır.

  • multiply(20, 10) -> 200
  • 20 * 10 -> 200

negate

negate(<value1> : number) => number

Bir sayıyı geçersiz kılar. Pozitif sayıları negatif, tersi de döndürür.

  • negate(13) -> -13

nextSequence

nextSequence() => long

Sonraki benzersiz diziyi döndürür. Numara yalnızca bir bölüm içinde ardışık ve PartitionID tarafından önek olarak eklenir.

  • nextSequence() == 12313112 -> false

normalize

normalize(<String to normalize> : string) => string

, Aksanlı Unicode karakterlerini ayırmak için dize değerini normalleştirir.

  • regexReplace(normalize('bo²s'), `\p{M}`, '') -> 'boys'

not

not(<value1> : boolean) => boolean

Mantıksal değilleme işleci.

  • not(true) -> false
  • not(10 == 20) -> true

notEquals

notEquals(<value1> : any, <value2> : any) => boolean

Karşılaştırma eşit değildir işleci. ! = İşleci ile aynı.

  • 12 != 24 -> true
  • 'bojjus' != 'bo' + 'jjus' -> false

notNull

notNull(<value1> : any) => boolean

Değerin NULL olup olmadığını denetler.

  • notNull(NULL()) -> false
  • notNull('') -> true

nTile

nTile([<value1> : integer]) => integer

NTileİşlevi her bir pencere bölümü için satırları n 1 ' den çok ' a kadar olan demetlere böler n . Demet değerleri en fazla 1 farklı olacaktır. Bölümdeki satır sayısı demet sayısına eşit olarak bölünmezse, ilk sepete başlayarak, geri kalan değerler her demet için bir dağıtılır. NTileİşlevi tertiles , kumaları, ve diğer genel özet istatistiklerini hesaplamak için yararlıdır. İşlev, başlatma sırasında iki değişkeni hesaplar: düzenli bir demet boyutunun boyutuna eklenmiş bir ek satır olacaktır. Her iki değişken de geçerli bölümün boyutunu temel alır. Hesaplama işlemi sırasında işlev geçerli satır numarasını, geçerli demet numarasını ve demet 'in değiştirileceği satır numarasını (bucketThreshold) izler. Geçerli satır numarası demet eşiğine ulaştığında, demet değeri bir artırılır ve eşik, demet boyutu (ve geçerli demet doldurulmuş ise bir ek) ile artırılır.

  • nTile()
  • nTile(numOfBuckets)

null

null() => null

NULL değeri döndürür. syntax(null())' Null ' adlı bir sütun varsa, işlevini kullanın. Tarafından kullanılan tüm işlemler NULL ile sonuçlanır.

  • isNull('dumbo' + null) -> true
  • isNull(10 * null) -> true
  • isNull('') -> false
  • isNull(10 + 20) -> false
  • isNull(10/0) -> true

or

or(<value1> : boolean, <value2> : boolean) => boolean

Mantıksal VEYA operatörüdür. | | İle aynı.

  • or(true, false) -> true
  • true || false -> true

originColumns

originColumns(<streamName> : string) => any

Sütunların oluşturulduğu kaynak akış için tüm çıkış sütunlarını alır. Başka bir işleve eklenmelidir.

  • array(toString(originColumns('source1')))

output

output() => any

Önbellek havuzunun sonuçlarının ilk satırını döndürür * cacheSink#output()


outputs

output() => any

Önbellek havuzunun sonuçlarının tüm çıkış satırı kümesini döndürür * cacheSink#outputs()


partitionId

partitionId() => integer

Giriş satırının bulunduğu geçerli bölüm KIMLIĞINI döndürür.

  • partitionId()

pMod

pMod(<value1> : any, <value2> : any) => any

Sayı çiftinin pozitif mod sayısı.

  • pmod(-20, 8) -> 4

power

power(<value1> : number, <value2> : number) => double

Bir sayıyı diğerinin kuvvetine yükseltir.

  • power(10, 2) -> 100

radians

radians(<value1> : number) => double

Dereceyi radyana dönüştürür * radians(180) => 3.141592653589793


random

random(<value1> : integral) => long

Bölüm içinde isteğe bağlı bir çekirdek verilen rastgele bir sayı döndürür. Çekirdek sabit bir değer olmalı ve rastgele değerler üretmek için PartitionID ile birlikte kullanılmalıdır * random(1) == 1 -> false


rank

rank() => integer

Bir pencerenin order by yan tümcesinde belirtilen bir değer grubundaki bir değerin derecesini hesaplar. Sonuç, Bölüm sıralamasına göre geçerli satırdan önceki veya eşit olan satır sayısıdır. Değerler dizide boşluk oluşturur. Sıralama, veriler sıralanmasa bile ve değerlerde değişiklik ararken bile kullanılır.

  • rank()

reassociate

reassociate(<value1> : map, <value2> : binaryFunction) => map

Anahtarları yeni değerlerle ilişkilendirerek Haritayı dönüştürür. Öğeyi #key ve geçerli değeri #value olarak adreslebileceğiniz bir eşleme işlevi alır.

  • reassociate(['fruit' -> 'apple', 'vegetable' -> 'tomato'], substring(#key, 1, 1) + substring(#value, 1, 1)) => ['fruit' -> 'fa', 'vegetable' -> 'vt']

reduce

reduce(<value1> : array, <value2> : any, <value3> : binaryfunction, <value4> : unaryfunction) => any

Öğeleri bir dizide biriktirir. Azaltma, #acc ve #item olarak ilk ifade işlevindeki bir Biriktiricinin ve bir öğenin bir başvurusunu bekler ve ikinci ifade işlevinde kullanılacak #result olarak elde edilen değeri bekler.

  • toString(reduce(['1', '2', '3', '4'], '0', #acc + #item, #result)) -> '01234'

regexExtract

regexExtract(<string> : string, <regex to find> : string, [<match group 1-based index> : integral]) => string

Verili bir Regex deseninin eşleşen alt dizesini ayıklayın. Son parametre, eşleşme grubunu tanımlar ve atlanırsa varsayılan olarak 1 ' e ayarlanır. Kaçış olmadan bir dizeyle eşleştirmek için ' ' (Back quote) kullanın.

  • regexExtract('Cost is between 600 and 800 dollars', '(\\d+) and (\\d+)', 2) -> '800'
  • regexExtract('Cost is between 600 and 800 dollars', `(\d+) and (\d+)`, 2) -> '800'

regexMatch

regexMatch(<string> : string, <regex to match> : string) => boolean

Dizenin verilen Regex düzeniyle eşleşip eşleşmediğini denetler. Kaçış olmadan bir dizeyle eşleştirmek için ' ' (Back quote) kullanın.

  • regexMatch('200.50', '(\\d+).(\\d+)') -> true
  • regexMatch('200.50', `(\d+).(\d+)`) -> true

regexReplace

regexReplace(<string> : string, <regex to find> : string, <substring to replace> : string) => string

Bir Regex deseninin tüm oluşumlarını, belirtilen dizedeki başka bir alt dizeyle Değiştir kaçış olmadan bir dizeyle eşleştirmek için ' ' (arka quote) kullanın.

  • regexReplace('100 and 200', '(\\d+)', 'bojjus') -> 'bojjus and bojjus'
  • regexReplace('100 and 200', `(\d+)`, 'gunchus') -> 'gunchus and gunchus'

regexSplit

regexSplit(<string to split> : string, <regex expression> : string) => array

Bir dizeyi Regex temelinde bir sınırlayıcı temelinde böler ve dizeler dizisini döndürür.

  • regexSplit('bojjusAgunchusBdumbo', `[CAB]`) -> ['bojjus', 'gunchus', 'dumbo']
  • regexSplit('bojjusAgunchusBdumboC', `[CAB]`) -> ['bojjus', 'gunchus', 'dumbo', '']
  • (regexSplit('bojjusAgunchusBdumboC', `[CAB]`)[1]) -> 'bojjus'
  • isNull(regexSplit('bojjusAgunchusBdumboC', `[CAB]`)[20]) -> true

replace

replace(<string> : string, <substring to find> : string, [<substring to replace> : string]) => string

Bir alt dizenin tüm tekrarlamalarını verilen dizedeki başka bir alt dize ile değiştirin. Son parametre atlanırsa, varsayılan olarak dize boş olur.

  • replace('doggie dog', 'dog', 'cat') -> 'catgie cat'
  • replace('doggie dog', 'dog', '') -> 'gie '
  • replace('doggie dog', 'dog') -> 'gie '

reverse

reverse(<value1> : string) => string

Bir dizeyi tersine çevirir.

  • reverse('gunchus') -> 'suhcnug'

right(<string to subset> : string, <number of characters> : integral) => string

Sağdan karakter sayısıyla bir alt dize ayıklar. Alt DIZEDEN aynı (Str, LENGTH (str)-n, n).

  • right('bojjus', 2) -> 'us'
  • right('bojjus', 20) -> 'bojjus'

rlike

rlike(<string> : string, <pattern match> : string) => boolean

Dizenin verilen Regex düzeniyle eşleşip eşleşmediğini denetler.

  • rlike('200.50', `(\d+).(\d+)`) -> true
  • rlike('bogus', `M[0-9]+.*`) -> false

round

round(<number> : number, [<scale to round> : number], [<rounding option> : integral]) => double

Bir sayıyı isteğe bağlı bir ölçek ve isteğe bağlı bir yuvarlama modu olarak yuvarlar. Ölçek atlanırsa, varsayılan olarak 0 olur. Mod atlanırsa, varsayılan olarak ROUND_HALF_UP (5) olarak ayarlanır. Yuvarlama değerleri şunlardır 1-ROUND_UP 2-ROUND_DOWN 3-ROUND_CEILING 4-ROUND_FLOOR 5-ROUND_HALF_UP 6-ROUND_HALF_DOWN 7-ROUND_HALF_EVEN 8-ROUND_UNNECESSARY.

  • round(100.123) -> 100.0
  • round(2.5, 0) -> 3.0
  • round(5.3999999999999995, 2, 7) -> 5.40

rowNumber

rowNumber() => integer

1 ile başlayan bir penceredeki satırlar için sıralı bir satır numaralandırması atar.

  • rowNumber()

rpad

rpad(<string to pad> : string, <final padded length> : integral, <padding> : string) => string

Dizeyi, belirli bir uzunluğa ulaşana kadar sağlanan doldurmaya göre sağ Altlar. Dize uzunluğuna eşit veya daha büyük ise, bu, uzunluğa atılır.

  • rpad('dumbo', 10, '-') -> 'dumbo-----'
  • rpad('dumbo', 4, '-') -> 'dumb'
  • ' ' RPAD (' Dumbo ', 8, ' <> ')-> ' Dumbo<><'``

rtrim

rtrim(<string to trim> : string, [<trim characters> : string]) => string

Sondaki karakterlerin bir dizesini sağa kırpar. İkinci parametre belirtilmemişse boşluğu kırpar. Aksi takdirde, ikinci parametrede belirtilen herhangi bir karakteri kırpar.

  • rtrim(' dumbo ') -> ' dumbo'
  • rtrim('!--!du!mbo!', '-!') -> '!--!du!mbo'

second

second(<value1> : timestamp, [<value2> : string]) => integer

Bir tarihin ikinci değerini alır. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Yerel Saat dilimi varsayılan olarak kullanılır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

  • second(toTimestamp('2009-07-30 12:58:59')) -> 59

seconds

seconds(<value1> : integer) => long

Saniye sayısı için milisaniye cinsinden süre.

  • seconds(2) -> 2000L

setBitSet

setBitSet (<value1>: array, <value2>:array) => array

Bu bitset 'teki bit konumlarını ayarlar * setBitSet(toBitSet([10, 32]), [98]) => [4294968320L, 17179869184L]


sha1

sha1(<value1> : any, ...) => string

Farklı ilkel veri türlerinin sütun kümesinin SHA-1 özetini hesaplar ve 40 karakter onaltılı dize döndürür. Bir satır için parmak izini hesaplamak üzere kullanılabilir.

  • sha1(5, 'gunchus', 8.2, 'bojjus', true, toDate('2010-4-4')) -> '46d3b478e8ec4e1f3b453ac3d8e59d5854e282bb'

sha2

sha2(<value1> : integer, <value2> : any, ...) => string

Yalnızca 0 (256), 224, 256, 384, 512 değerlerinin yer aldığı bir bit uzunluğu verilen, farklı ilkel veri türlerinin sütun kümesinin SHA-2 özetini hesaplar. Bir satır için parmak izini hesaplamak üzere kullanılabilir.

  • sha2(256, 'gunchus', 8.2, 'bojjus', true, toDate('2010-4-4')) -> 'afe8a553b1761c67d76f8c31ceef7f71b66a1ee6f4e6d3b5478bf68b47d06bd3'

sin

sin(<value1> : number) => double

Bir sinüs değeri hesaplar.

  • sin(2) -> 0.9092974268256817

sinh

sinh(<value1> : number) => double

Bir hiperbolik sinüs değeri hesaplar.

  • sinh(0) -> 0.0

size

size(<value1> : any) => integer

Bir dizi veya harita türünün boyutunu bulur * size(['element1', 'element2']) -> 2

  • size([1,2,3]) -> 3

skewness

skewness(<value1> : number) => double

Bir sütunun çarpıklığını alır.

  • skewness(sales)

skewnessIf

skewnessIf(<value1> : boolean, <value2> : number) => double

Ölçütlere göre, bir sütunun çarpıklığını alır.

  • skewnessIf(region == 'West', sales)

slice

slice(<array to slice> : array, <from 1-based index> : integral, [<number of items> : integral]) => array

Bir dizinin alt kümesini bir konumdan ayıklar. Konum 1 tabanlıdır. Uzunluk atlanırsa, dize sonuna varsayılan olarak ayarlanır.

  • slice([10, 20, 30, 40], 1, 2) -> [10, 20]
  • slice([10, 20, 30, 40], 2) -> [20, 30, 40]
  • slice([10, 20, 30, 40], 2)[1] -> 20
  • isNull(slice([10, 20, 30, 40], 2)[0]) -> true
  • isNull(slice([10, 20, 30, 40], 2)[20]) -> true
  • slice(['a', 'b', 'c', 'd'], 8) -> []

sort

sort(<value1> : array, <value2> : binaryfunction) => array

Belirtilen koşul işlevini kullanarak diziyi sıralar. Sıralama, #item1 ve #item2 olarak ifade işlevindeki birbirini izleyen iki öğeye bir başvuru bekliyor.

  • sort([4, 8, 2, 3], compare(#item1, #item2)) -> [2, 3, 4, 8]
  • sort(['a3', 'b2', 'c1'], iif(right(#item1, 1) >= right(#item2, 1), 1, -1)) -> ['c1', 'b2', 'a3']

soundex

soundex(<value1> : string) => string

soundexDizenin kodunu alır.

  • soundex('genius') -> 'G520'

split

split(<string to split> : string, <split characters> : string) => array

Bir dizeyi sınırlayıcıya göre böler ve dizeler dizisini döndürür.

  • split('bojjus,guchus,dumbo', ',') -> ['bojjus', 'guchus', 'dumbo']
  • split('bojjus,guchus,dumbo', '|') -> ['bojjus,guchus,dumbo']
  • split('bojjus, guchus, dumbo', ', ') -> ['bojjus', 'guchus', 'dumbo']
  • split('bojjus, guchus, dumbo', ', ')[1] -> 'bojjus'
  • isNull(split('bojjus, guchus, dumbo', ', ')[0]) -> true
  • isNull(split('bojjus, guchus, dumbo', ', ')[20]) -> true
  • split('bojjusguchusdumbo', ',') -> ['bojjusguchusdumbo']

sqrt

sqrt(<value1> : number) => double

Bir sayının kare kökünü hesaplar.

  • sqrt(9) -> 3

startsWith

startsWith(<string> : string, <substring to check> : string) => boolean

Dizenin sağlanan dizeyle başlatılıp başlamadığını denetler.

  • startsWith('dumbo', 'du') -> true

stddev

stddev(<value1> : number) => double

Bir sütunun standart sapmasını alır.

  • stdDev(sales)

stddevIf

stddevIf(<value1> : boolean, <value2> : number) => double

Ölçütlere göre, bir sütunun standart sapmasını alır.

  • stddevIf(region == 'West', sales)

stddevPopulation

stddevPopulation(<value1> : number) => double

Bir sütunun popülasyon standart sapmasını alır.

  • stddevPopulation(sales)

stddevPopulationIf

stddevPopulationIf(<value1> : boolean, <value2> : number) => double

Ölçütlere göre, bir sütunun popülasyon standart sapmasını alır.

  • stddevPopulationIf(region == 'West', sales)

stddevSample

stddevSample(<value1> : number) => double

Bir sütunun örnek standart sapmasını alır.

  • stddevSample(sales)

stddevSampleIf

stddevSampleIf(<value1> : boolean, <value2> : number) => double

Ölçütlere göre, bir sütunun örnek standart sapmasını alır.

  • stddevSampleIf(region == 'West', sales)

subDays

subDays(<date/timestamp> : datetime, <days to subtract> : integral) => datetime

Bir tarih veya zaman damgasından gün çıkar. Tarih için-işleci ile aynı.

  • subDays(toDate('2016-08-08'), 1) -> toDate('2016-08-07')

subMonths

subMonths(<date/timestamp> : datetime, <months to subtract> : integral) => datetime

Bir tarih veya zaman damgasından ay çıkarın.

  • subMonths(toDate('2016-09-30'), 1) -> toDate('2016-08-31')

substring

substring(<string to subset> : string, <from 1-based index> : integral, [<number of characters> : integral]) => string

Belirli bir uzunluktaki alt dizeyi bir konumdan ayıklar. Konum 1 tabanlıdır. Uzunluk atlanırsa, dize sonuna varsayılan olarak ayarlanır.

  • substring('Cat in the hat', 5, 2) -> 'in'
  • substring('Cat in the hat', 5, 100) -> 'in the hat'
  • substring('Cat in the hat', 5) -> 'in the hat'
  • substring('Cat in the hat', 100, 100) -> ''

sum

sum(<value1> : number) => number

Sayısal bir sütunun toplam toplamını alır.

  • sum(col)

sumDistinct

sumDistinct(<value1> : number) => number

Sayısal bir sütunun farklı değerlerinin toplam toplamını alır.

  • sumDistinct(col)

sumDistinctIf

sumDistinctIf(<value1> : boolean, <value2> : number) => number

Ölçütlere dayalı olarak sayısal bir sütunun toplam toplamı alınır. Koşul herhangi bir sütunu temel alabilir.

  • sumDistinctIf(state == 'CA' && commission < 10000, sales)
  • sumDistinctIf(true, sales)

sumIf

sumIf(<value1> : boolean, <value2> : number) => number

Ölçütlere dayalı olarak sayısal bir sütunun toplam toplamı alınır. Koşul herhangi bir sütunu temel alabilir.

  • sumIf(state == 'CA' && commission < 10000, sales)
  • sumIf(true, sales)

tan

tan(<value1> : number) => double

Bir teğet değeri hesaplar.

  • tan(0) -> 0.0

tanh

tanh(<value1> : number) => double

Bir hiperbolik tanjant değerini hesaplar.

  • tanh(0) -> 0.0

toBase64

toBase64(<value1> : string) => string

Verilen dizeyi Base64 olarak kodlar.

  • toBase64('bojjus') -> 'Ym9qanVz'

toBinary

toBinary(<value1> : any) => binary

Herhangi bir sayısal/Tarih/zaman damgası/dizeyi ikili temsiline dönüştürür.

  • toBinary(3) -> [0x11]

toBoolean

toBoolean(<value1> : string) => boolean

('T ', ' true ', ' y ', ' Yes ', ' 1 ') değerini true ve (' f ', ' false ', ' n ', ' No ', ' 0 ') değerini false ve NULL değerine dönüştürür.

  • toBoolean('true') -> true
  • toBoolean('n') -> false
  • isNull(toBoolean('truthy')) -> true

toByte

toByte(<value> : any, [<format> : string], [<locale> : string]) => byte

Herhangi bir sayısal veya dizeyi bir bayt değerine dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir.

  • toByte(123)
  • 123
  • toByte(0xFF)
  • -1
  • toByte('123')
  • 123

toDate

toDate(<string> : any, [<date format> : string]) => date

İsteğe bağlı bir giriş tarihi biçimi kullanarak giriş tarihi dizesini tarihe dönüştürür. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. Giriş tarihi biçimi atlanırsa varsayılan biçim yyyy-[M] M-[d] d biçimindedir. Kabul edilen biçimler şunlardır: [yyyy, yyyy-[M] M, yyyy-[M] M-[d] d, yyyy-[M] M-[d] dT *].

  • toDate('2012-8-18') -> toDate('2012-08-18')
  • toDate('12/18/2012', 'MM/dd/yyyy') -> toDate('2012-12-18')

toDecimal

toDecimal(<value> : any, [<precision> : integral], [<scale> : integral], [<format> : string], [<locale> : string]) => decimal(10,0)

Herhangi bir sayısal veya dizeyi ondalık bir değere dönüştürür. Duyarlık ve ölçek belirtilmemişse, varsayılan olarak ayarlanır (10, 2). Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. En-US, de, zh-CN gibi BCP47 dili biçiminde isteğe bağlı bir yerel ayar biçimi.

  • toDecimal(123.45) -> 123.45
  • toDecimal('123.45', 8, 4) -> 123.4500
  • toDecimal('$123.45', 8, 4,'$###.00') -> 123.4500
  • toDecimal('Ç123,45', 10, 2, 'Ç###,##', 'de') -> 123.45

toDouble

toDouble(<value> : any, [<format> : string], [<locale> : string]) => double

Herhangi bir sayısal veya dizeyi bir Double değere dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. En-US, de, zh-CN gibi BCP47 dili biçiminde isteğe bağlı bir yerel ayar biçimi.

  • toDouble(123.45) -> 123.45
  • toDouble('123.45') -> 123.45
  • toDouble('$123.45', '$###.00') -> 123.45
  • toDouble('Ç123,45', 'Ç###,##', 'de') -> 123.45

toFloat

toFloat(<value> : any, [<format> : string], [<locale> : string]) => float

Herhangi bir sayısal veya dizeyi bir float değerine dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. Herhangi bir Double fazlalıklarını keser.

  • toFloat(123.45) -> 123.45f
  • toFloat('123.45') -> 123.45f
  • toFloat('$123.45', '$###.00') -> 123.45f

toInteger

toInteger(<value> : any, [<format> : string], [<locale> : string]) => integer

Herhangi bir sayısal veya dizeyi bir tamsayı değerine dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. Long, float, Double ile keser.

  • toInteger(123) -> 123
  • toInteger('123') -> 123
  • toInteger('$123', '$###') -> 123

toLong

toLong(<value> : any, [<format> : string], [<locale> : string]) => long

Herhangi bir sayısal veya dizeyi uzun bir değere dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. Tüm float, Double.

  • toLong(123) -> 123
  • toLong('123') -> 123
  • toLong('$123', '$###') -> 123

toShort

toShort(<value> : any, [<format> : string], [<locale> : string]) => short

Herhangi bir sayısal veya dizeyi bir kısa değere dönüştürür. Dönüştürme için isteğe bağlı bir Java ondalık biçimi kullanılabilir. Tüm tamsayıları, uzun, float, Double fazlalıklarını keser.

  • toShort(123) -> 123
  • toShort('123') -> 123
  • toShort('$123', '$###') -> 123

toString

toString(<value> : any, [<number format/date format> : string]) => string

İlkel bir veri türünü dizeye dönüştürür. Sayı ve tarih için bir biçim belirtilebilir. Belirtilmezse, sistem varsayılanı seçilir. Sayılar için Java Decimal biçimi kullanılır. Olası tüm tarih biçimleri için Java SimpleDateFormat öğesine bakın; Varsayılan biçim yyyy-aa-gg şeklindedir.

  • toString(10) -> '10'
  • toString('engineer') -> 'engineer'
  • toString(123456.789, '##,###.##') -> '123,456.79'
  • toString(123.78, '000000.000') -> '000123.780'
  • toString(12345, '##0.#####E0') -> '12.345E3'
  • toString(toDate('2018-12-31')) -> '2018-12-31'
  • isNull(toString(toDate('2018-12-31', 'MM/dd/yy'))) -> true
  • toString(4 == 20) -> 'false'

toTimestamp

toTimestamp(<string> : any, [<timestamp format> : string], [<time zone> : string]) => timestamp

Bir dizeyi, isteğe bağlı bir zaman damgası biçimi verilen bir zaman damgasına dönüştürür. Zaman damgası atlanırsa yyyy-[M] M-[d] d hh: mm: SS [. f...] kullanılır. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Zaman damgası 999 değeri ile en fazla milisaniyeye kadar doğruluğu destekler. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

  • toTimestamp('2016-12-31 00:12:00') -> toTimestamp('2016-12-31 00:12:00')
  • toTimestamp('2016-12-31T00:12:00', 'yyyy-MM-dd\'T\'HH:mm:ss', 'PST') -> toTimestamp('2016-12-31 00:12:00')
  • toTimestamp('12/31/2016T00:12:00', 'MM/dd/yyyy\'T\'HH:mm:ss') -> toTimestamp('2016-12-31 00:12:00')
  • millisecond(toTimestamp('2019-02-03 05:19:28.871', 'yyyy-MM-dd HH:mm:ss.SSS')) -> 871

toUTC

toUTC(<value1> : timestamp, [<value2> : string]) => timestamp

Zaman damgasını UTC 'ye dönüştürür. İsteğe bağlı bir saat dilimini ' GMT ', ' PST ', ' UTC ', ' Amerika/Cayman ' biçiminde geçirebilirsiniz. Varsayılan olarak geçerli saat dilimine ayarlanır. SimpleDateFormatKullanılabilir biçimler Için Java sınıfının sınıfına bakın. https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

  • toUTC(currentTimestamp()) == toTimestamp('2050-12-12 19:18:12') -> false
  • toUTC(currentTimestamp(), 'Asia/Seoul') != toTimestamp('2050-12-12 19:18:12') -> true

translate

translate(<string to translate> : string, <lookup characters> : string, <replace characters> : string) => string

Bir karakter kümesini dizedeki başka bir karakter kümesiyle değiştirin. Karakterlerin 1 ile 1 arasında değiştirme vardır.

  • translate('(bojjus)', '()', '[]') -> '[bojjus]'
  • translate('(gunchus)', '()', '[') -> '[gunchus'

trim

trim(<string to trim> : string, [<trim characters> : string]) => string

Baştaki ve sondaki karakterlerden oluşan dizeyi kırpar. İkinci parametre belirtilmemişse boşluğu kırpar. Aksi takdirde, ikinci parametrede belirtilen herhangi bir karakteri kırpar.

  • trim(' dumbo ') -> 'dumbo'
  • trim('!--!du!mbo!', '-!') -> 'du!mbo'

true

true() => boolean

Her zaman doğru bir değer döndürür. syntax(true())' True ' adlı bir sütun varsa, işlevini kullanın.

  • (10 + 20 == 30) -> true
  • (10 + 20 == 30) -> true()

typeMatch

typeMatch(<type> : string, <base type> : string) => boolean

Sütunun türüyle eşleşir. Yalnızca desenli ifadelerde kullanılabilir. sayı Short, Integer, Long, Double, float veya Decimal ile eşleşir, tamsayısı Short, Integer, Long, kesir, Double, float, Decimal ve DateTime ile tarih veya zaman damgası türüyle eşleşir.

  • typeMatch(type, 'number')
  • typeMatch('date', 'datetime')

unescape

unescape(<string_to_escape> : string, <format> : string) => string

Bir dizeyi bir biçime göre geri çıkar. Kabul edilebilir biçim için değişmez değerler ' JSON ', ' XML ', ' ECMAScript ', ' HTML ', ' Java ' değerleridir.

  • unescape('{\\\\\"value\\\\\": 10}', 'json')
  • '{\\\"value\\\": 10}'

unfold

unfold (<value1>: array) => any

Bir diziyi satır kümesine ayırır ve her satırdaki kalan sütunların değerlerini yineler.

  • unfold(addresses) => any
  • unfold( @(name = salesPerson, sales = salesAmount) ) => any

unhex

unhex(<value1>: string) => binary

Dize gösteriminden bir ikili değeri geri al. Bu, dizeden ikili gösterimine dönüştürmek için SHA2, MD5 ile birlikte kullanılabilir * unhex('1fadbe') -> toBinary([toByte(0x1f), toByte(0xad), toByte(0xbe)])

  • unhex(md5(5, 'gunchus', 8.2, 'bojjus', true, toDate('2010-4-4'))) -> toBinary([toByte(0x4c),toByte(0xe8),toByte(0xa8),toByte(0x80),toByte(0xbd),toByte(0x62),toByte(0x1a),toByte(0x1f),toByte(0xfa),toByte(0xd0),toByte(0xbc),toByte(0xa9),toByte(0x05),toByte(0xe1),toByte(0xbc),toByte(0x5a)])

union

union(<value1>: array, <value2> : array) => array

2 dizideki ayrı öğelerin birleşim kümesini döndürür.

  • union([10, 20, 30], [20, 40]) => [10, 20, 30, 40]

upper

upper(<value1> : string) => string

Büyük/büyük bir dize.

  • upper('bojjus') -> 'BOJJUS'

uuid

uuid() => string

Oluşturulan UUID 'yi döndürür.

  • uuid()

variance

variance(<value1> : number) => double

Bir sütunun varyansını alır.

  • variance(sales)

varianceIf

varianceIf(<value1> : boolean, <value2> : number) => double

Ölçütlere göre, bir sütunun farkını alır.

  • varianceIf(region == 'West', sales)

variancePopulation

variancePopulation(<value1> : number) => double

Bir sütunun popülasyon varyansını alır.

  • variancePopulation(sales)

variancePopulationIf

variancePopulationIf(<value1> : boolean, <value2> : number) => double

Ölçütlere göre, bir sütunun popülasyon varyansını alır.

  • variancePopulationIf(region == 'West', sales)

varianceSample

varianceSample(<value1> : number) => double

Bir sütunun taraflı olmayan varyansını alır.

  • varianceSample(sales)

varianceSampleIf

varianceSampleIf(<value1> : boolean, <value2> : number) => double

Ölçütlere göre, bir sütunun taraflı olmayan varyansını alır.

  • varianceSampleIf(region == 'West', sales)

weekOfYear

weekOfYear(<value1> : datetime) => integer

Yılın tarihini verilen hafta alır.

  • weekOfYear(toDate('2008-02-20')) -> 8

weeks

weeks(<value1> : integer) => long

Hafta sayısı için milisaniye cinsinden süre.

  • weeks(2) -> 1209600000L

xor

xor(<value1> : boolean, <value2> : boolean) => boolean

Mantıksal XOR işleci. ^ İşleci ile aynı.

  • xor(true, false) -> true
  • xor(true, true) -> false
  • true ^ false -> true

year

year(<value1> : datetime) => integer

Tarihin yıl değerini alır.

  • year(toDate('2012-8-8')) -> 2012

Sonraki adımlar

Ifade oluşturucuyu nasıl kullanacağınızı öğrenin.