Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: Databricks SQL
Databricks Runtime
Davranışını denetlemek için işleve geçirilebilen parametreli ifade.
Örneğin, array_sort işlevi özel sıralama düzeni tanımlamak için bir lambda işlevini bağımsız değişken olarak kabul eder.
Sözdizimi
{ param -> expr |
(param1 [, ...] ) -> expr }
Parametreler
-
paramN
: Lambda işlevinin bağımsız değişkenlerini geçirmek için üst işlev tarafından kullanılan bir tanımlayıcı. -
expr
:paramN
öğesine başvuran, bir alt sorgu veya SQL kullanıcı tanımlı işlevi içermeyen herhangi bir basit ifade.
İadeler
Sonuç türü, sonuç türü expr
tarafından tanımlanır.
Birden paramN
fazla varsa, parametre adları benzersiz olmalıdır. Parametre türleri, çağırma işlevi tarafından ayarlanır.
expression
bu türler için geçerli olmalıdır ve sonuç türü çağırma işlevlerinin tanımlı beklentileriyle eşleşmelidir.
Örnekler
array_sort işlevi işlevi iki parametreli bir lambda işlevi bekler.
Parametre türleri, sıralanacak dizinin öğelerinin türü olacaktır.
İfadenin bir TAMSAYı döndürmesi beklenir; -1 param1
<param2
anlamına gelir, 0, param1
= param2
anlamına gelir ve diğer tüm değerler 1 anlamına gelir.
STRING dizisini sağdan sola sözcük düzeninde sıralamak için aşağıdaki lambda işlevini kullanabilirsiniz.
(p1, p2) -> CASE WHEN p1 = p2 THEN 0
WHEN reverse(p1) < reverse(p2) THEN -1
ELSE 1 END
Lambda işlevleri tanımlanır ve geçici olarak kullanılır. Bu nedenle işlev tanımı, argümandır:
> SELECT array_sort(array('Hello', 'World'),
(p1, p2) -> CASE WHEN p1 = p2 THEN 0
WHEN reverse(p1) < reverse(p2) THEN -1
ELSE 1 END);
[World, Hello]