Ta kwerenda zwraca sumę „zamknięty” dzienna sprzedaż dla konkretnego sprzedawcy w określonym przedziale czasowym:Wybór samą kolumnę z inna warunki
SELECT SUM(price) as closed_total FROM dbo.Sales WHERE salesperson_ID = @salesperson_ID AND date_ordered BETWEEN @start_date AND @end_date AND closed = 1 GROUP BY date_ordered
Wyjście wygląda następująco:
daily_total 200 150 325 120 (etc)
Chciałbym zmodyfikować zapytanie, aby zwrócić jedną kolumnę dla zamkniętej sprzedaży i jedną kolumnę dla całej sprzedaży (to samo zapytanie, ale bez warunku "closed = 1"), z takim wynikiem:
closed_total | all_total 200 | 275 150 | 150 325 | 500 120 | 280 (etc)
Próbowałem za pomocą UNION łączenie oddzielnych zapytań, tak:
SELECT SUM(price) as closed_total FROM dbo.Sales WHERE salesperson_ID = @salesperson_ID AND date_ordered BETWEEN @start_date AND @end_date AND closed = 1 GROUP BY date_ordered UNION ALL SELECT SUM(price) as all_total FROM dbo.Sales WHERE salesperson_ID = @salesperson_ID AND date_ordered BETWEEN @start_date AND @end_date GROUP BY date_ordered
Pomyślałem, że może to zrobić to, czego szuka, ale kładzie obie sumy w jednej kolumnie o nazwie „closed_total”. Jakieś pomysły?
To jest genialne, dziękuję! – Ethan