Introduction à Redshift
Jason Myers
Principal Engineer
SELECT *Utilisez-les dans les clauses suivantes dès que possible
JOINWHEREGROUP BY
Respectez l'ordre des SORTKEYs dans ORDER BY
sortkey_1, sortkey_2, sortkey_3sort_key_1, sort_key_3
DISTKEY et SORTKEYSELECT receipts.cookie_id,
sum(receipts.total)
FROM receipts
JOIN cookies ON receipts.cookie_id = cookies.cookie_id
-- Keep cookies predicates in the join to push down to nodes holding the records for cookies
AND cookies.available_on < '2023-11-14'
AND cookies.end_of_sale IS null
-- Predicates that are not part of the join or on the joined table stay in the WHERE clause
WHERE receipts.order_time > '2023-11-13'
GROUP BY 1 ORDER BY 1;
Lorsque vous utilisez :
GROUP BYORDER BYÀ éviter
GROUP BY col_one, col_two, col_three
ORDER BY col_two, col_three, col_one
Recommandé
GROUP BY col_two, col_three, col_one
ORDER BY col_two, col_three, col_one
EXISTS dans vos prédicats si vous vérifiez seulement la véracité du résultat d'une sous-requêteSELECT column_name
FROM table_name
WHERE EXISTS
(SELECT column_name
FROM table_name
WHERE active is True);
Introduction à Redshift