Zadanie 17.

Dla każdego klienta pokaż datę oraz numer pierwszego złożonego zamówienia, a także łączną ilość złożonych przez niego zamówień. Datę zamówienia sformatuj wg wzoru (screen).

Schemat: OE, tabela: Orders, Kolumny: customer_id, order_id, order_date, Wynik: 47 rows

p17

 

 

 

Rozwiązanie

SELECT customer_id||' ' as Customer, to_char(MIN(order_date), 'DD.MM.YYYY HH:MM:SS') as "First Order Date", MIN(order_id)as "First Order ID",
COUNT(order_id) "Total Orders"
FROM orders
GROUP BY customer_id
ORDER BY Customer;

Uwaga: Konkatencja przy customer_id w klauzuli SELECT ma na celu wyłącznie poprawienie czytelności wyniku; w innym wypadku kolumny customer_id i order_date zlewają się ze sobą i trudniej odczytać dane. Ciąg customer_id z “doklejoną” spacją (można dokleić też “nic” czyli ”) jest traktowany jako ciąg tekstowy i wyrównywany do lewej, w przeciwieństwie do typów liczbowych, które są wyrównywane do prawej.

[collapse]