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.
Şunun için geçerlidir: Databricks SQL
Databricks Runtime 16.2 ve üzeri
Azure Databricks, zincirlenmiş işleç birleşimlerinden sorgu oluşturmaya olanak tanıyan SQL işlem hattı söz dizimini destekler.
- Herhangi bir sorgu,
|>
kanal karakteriyle ayrılmış bir son ek olarak sıfır veya daha fazla pipe operatörünü içerebilir. - Her kanallı işlem, bir veya daha fazla SQL anahtar sözcüğü ve ardından kendi sözdizimiyle başlar.
- Operatörler herhangi bir sırayla, istenilen sayıda uygulanabilir.
- Genellikle FROM relation_name işlem hattını başlatmak için kullanılır, ancak sorgu işlem hattını başlatabilir.
Sözdizimi
{ FROM | TABLE } relation_name { |> piped_operation } [ ...]
Parametreler
-
İşlem hattının girişi olarak kullanılacak bir tablo veya görünümü tanımlar. Tablo veya görünüm bulunamazsa Azure Databricks bir TABLE_OR_VIEW_NOT_FOUND hatası oluşturur.
-
Önceki sorguyu veya kanal işlemini tüketen bir işlem. Ayrıntılar için bkz. piped_operation.
Örnek
Bu, ANSI SQL'de yazılmış TPC-H karşılaştırmasından 13. sorgudur:
> SELECT c_count, COUNT(*) AS custdist
FROM
(SELECT c_custkey, COUNT(o_orderkey) c_count
FROM customer
LEFT OUTER JOIN orders ON c_custkey = o_custkey
AND o_comment NOT LIKE '%unusual%packages%'
GROUP BY c_custkey
) AS c_orders
GROUP BY c_count
ORDER BY custdist DESC, c_count DESC;
SQL kanal işleçlerini kullanarak aynı mantığı yazmak için şunu ifade edebilirsiniz:
> FROM customer
|> LEFT OUTER JOIN orders ON c_custkey = o_custkey
AND o_comment NOT LIKE '%unusual%packages%'
|> AGGREGATE COUNT(o_orderkey) c_count
GROUP BY c_custkey
|> AGGREGATE COUNT(*) AS custdist
GROUP BY c_count
|> ORDER BY custdist DESC, c_count DESC;