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:
#accbir diziyi azaltırken tek çıktılarınızı dahil etmek istediğiniz bir değeri temsil eder#indexgeçerli dizi dizinini dizi dizin numaralarıyla birlikte temsil eder#index2, #index3 ...#itemdizideki 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) -> 20abs(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) -> 3010 + 20 -> 30add('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) -> falsetrue && 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)
truebetween(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']) ? stringtoLong(byNames(['income']))byNames(['income']) ? longtoBoolean(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')) -> truecase(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) -> 10coalesce(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')) -> trueconcatWS(' 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) -> truecontains([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') -> falsecurrentDate('PST') == toDate('2250-12-31') -> falsecurrentDate('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') -> falsecurrentUTC() != toTimestamp('2050-12-12 19:18:12') -> truefromUTC(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) -> 220 / 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) -> false12 == 24 -> false'bad' == 'bad' -> trueisNull('good' == toString(null)) -> trueisNull(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' -> trueequalsIgnoreCase('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) -> 20find(['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') -> falsefromUTC(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) -> 30greatest(10, toInteger(null), 20) -> 20greatest(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')) -> 12hour(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) -> 10iifNull(null, 20, 40) -> 20iifNull('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) -> truein(['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') -> 3instr('microsoft', 'o') -> 5instr('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') -> trueisBoolean('no') -> trueisBoolean('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') -> trueisByte('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') -> trueisDate('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') -> trueisDecimal('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') -> trueisDouble('$123.45' -> '$###.00') -> trueisDouble('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') -> trueisFloat('$123.45' -> '$###.00') -> trueisFloat('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') -> trueisInteger('$123' -> '$###') -> trueisInteger('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') -> trueisLong('$123' -> '$###') -> trueisLong('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()) -> trueisNull('') -> 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') -> trueisShort('$123' -> '$###') -> trueisShort('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') -> trueisTimestamp('2016-12-31T00:12:00' -> 'yyyy-MM-dd\\'T\\'HH:mm:ss' -> 'PST') -> trueisTimestamp('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) -> 10least(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') -> 3locate('o', 'microsoft', 6) -> 7locate('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) -> 1020 - 10 -> 10minus(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')) -> 58minute(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) -> 420 % 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) -> 20020 * 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) -> falsenot(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()) -> falsenotNull('') -> 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) -> trueisNull(10 * null) -> trueisNull('') -> falseisNull(10 + 20) -> falseisNull(10/0) -> true
or
or(<value1> : boolean, <value2> : boolean) => boolean
Mantıksal VEYA operatörüdür. | | İle aynı.
or(true, false) -> truetrue || 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+)') -> trueregexMatch('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
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+)`) -> truerlike('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.0round(2.5, 0) -> 3.0round(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] -> 20isNull(slice([10, 20, 30, 40], 2)[0]) -> trueisNull(slice([10, 20, 30, 40], 2)[20]) -> trueslice(['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]) -> trueisNull(split('bojjus, guchus, dumbo', ', ')[20]) -> truesplit('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') -> truetoBoolean('n') -> falseisNull(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)123toByte(0xFF)-1toByte('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.45toDecimal('123.45', 8, 4) -> 123.4500toDecimal('$123.45', 8, 4,'$###.00') -> 123.4500toDecimal('Ç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.45toDouble('123.45') -> 123.45toDouble('$123.45', '$###.00') -> 123.45toDouble('Ç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.45ftoFloat('123.45') -> 123.45ftoFloat('$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) -> 123toInteger('123') -> 123toInteger('$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) -> 123toLong('123') -> 123toLong('$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) -> 123toShort('123') -> 123toShort('$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'))) -> truetoString(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') -> falsetoUTC(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) => anyunfold( @(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) -> truexor(true, true) -> falsetrue ^ false -> true
year
year(<value1> : datetime) => integer
Tarihin yıl değerini alır.
year(toDate('2012-8-8')) -> 2012