QUALIFY yan tümcesi
Şunlar için geçerlidir: Databricks SQL Databricks Runtime 10.4 LTS ve üzeri.
Pencere işlevlerinin sonuçlarını filtreler. kullanmak QUALIFY
için, listede veya yan tümcesinde en az bir pencere işlevinin SELECT
QUALIFY
bulunması gerekir.
Sözdizimi
QUALIFY boolean_expression
Parametreler
-
Sonuç türü
boolean
olarak değerlendirilen herhangi bir ifade. İki veya daha fazla ifade mantıksal işleçler ( AND, OR) kullanılarak birleştirilebilir.yan tümcesinde
QUALIFY
belirtilen ifadeler toplama işlevleri içeremez.
Örnekler
CREATE TABLE dealer (id INT, city STRING, car_model STRING, quantity INT);
INSERT INTO dealer VALUES
(100, 'Fremont', 'Honda Civic', 10),
(100, 'Fremont', 'Honda Accord', 15),
(100, 'Fremont', 'Honda CRV', 7),
(200, 'Dublin', 'Honda Civic', 20),
(200, 'Dublin', 'Honda Accord', 10),
(200, 'Dublin', 'Honda CRV', 3),
(300, 'San Jose', 'Honda Civic', 5),
(300, 'San Jose', 'Honda Accord', 8);
-- QUALIFY with window functions in the SELECT list.
> SELECT
city,
car_model,
RANK() OVER (PARTITION BY car_model ORDER BY quantity) AS rank
FROM dealer
QUALIFY rank = 1;
city car_model rank
-------- ------------ ----
San Jose Honda Accord 1
Dublin Honda CRV 1
San Jose Honda Civic 1
-- QUALIFY with window functions in the QUALIFY clause.
SELECT city, car_model
FROM dealer
QUALIFY RANK() OVER (PARTITION BY car_model ORDER BY quantity) = 1;
city car_model
-------- ------------
San Jose Honda Accord
Dublin Honda CRV
San Jose Honda Civic