sql-tests.testcases.tpcds.q81.sql Maven / Gradle / Ivy
-- database: presto_tpcds; groups: tpcds; requires: io.prestodb.tempto.fulfillment.table.hive.tpcds.ImmutableTpcdsTablesRequirements
WITH
customer_total_return AS (
SELECT
"cr_returning_customer_sk" "ctr_customer_sk"
, "ca_state" "ctr_state"
, "sum"("cr_return_amt_inc_tax") "ctr_total_return"
FROM
catalog_returns
, date_dim
, customer_address
WHERE ("cr_returned_date_sk" = "d_date_sk")
AND ("d_year" = 2000)
AND ("cr_returning_addr_sk" = "ca_address_sk")
GROUP BY "cr_returning_customer_sk", "ca_state"
)
SELECT
"c_customer_id"
, "c_salutation"
, "c_first_name"
, "c_last_name"
, "ca_street_number"
, "ca_street_name"
, "ca_street_type"
, "ca_suite_number"
, "ca_city"
, "ca_county"
, "ca_state"
, "ca_zip"
, "ca_country"
, "ca_gmt_offset"
, "ca_location_type"
, "ctr_total_return"
FROM
customer_total_return ctr1
, customer_address
, customer
WHERE ("ctr1"."ctr_total_return" > (
SELECT ("avg"("ctr_total_return") * DECIMAL '1.2')
FROM
customer_total_return ctr2
WHERE ("ctr1"."ctr_state" = "ctr2"."ctr_state")
))
AND ("ca_address_sk" = "c_current_addr_sk")
AND ("ca_state" = 'GA')
AND ("ctr1"."ctr_customer_sk" = "c_customer_sk")
ORDER BY "c_customer_id" ASC, "c_salutation" ASC, "c_first_name" ASC, "c_last_name" ASC, "ca_street_number" ASC, "ca_street_name" ASC, "ca_street_type" ASC, "ca_suite_number" ASC, "ca_city" ASC, "ca_county" ASC, "ca_state" ASC, "ca_zip" ASC, "ca_country" ASC, "ca_gmt_offset" ASC, "ca_location_type" ASC, "ctr_total_return" ASC
LIMIT 100