Pokaż klientów, którzy w 2006 roku nie złożyli żadnego zamówienia, ale złożyli je później. Zadanie rozwiąż na dwa różne sposoby.
Schemat: OE, Tabela: Orders, Kolumny: customer_id, order_date, Wynik: 34 rows
[spoiler title=’Rozwiązanie’ style=’default’ collapse_link=’true’]
- Z podzapytaniem:
SELECT DISTINCT customer_id
FROM orders
WHERE customer_id not in
(
SELECT customer_id FROM orders WHERE extract(YEAR FROM order_date) = '2006′
)
ORDER BY customer_id;
- Z grupowaniem:
SELECT customer_id
FROM orders
GROUP BY customer_id
HAVING extract(year from MIN(order_date)) > '2006′
ORDER BY customer_id;
[/spoiler]