Zliczanie konkretnych wierszy

Odpowiedz Nowy wątek
2018-11-21 16:03
0

Witam, nie wiem za bardzo jak ugryźć ten temat. Mam w zapytanie SQL pogrupowane kolumny jak w załączniku.
Chcę aby dla danej grupy NrOrder potem dla danej grupy SalesRep, dla takiego samego CustomerName i takiej samej godziny do wiersza zostało przypisane 0 a gdy CustomerName nie jest taki sam w kolejnym wierszu to zwracamy 1.
Celem jest obliczenie ile w danym czasie zostało złożonych zamówień (ale nie dla takich samych klientów występujących w kolejnych wierszach)
W jakiś sposób muszę pewnie użyć count ale nie za bardzo wiem jak. Nie chcę używać Row_Number, no chyba że nie będzie wyjścia.

Załączam plik excel z wynikiem jaki chcę uzyskać.

Pozostało 580 znaków

2018-11-21 16:26

Nie wiem dlaczego pierwszy wiersz ma 0 bo to jest tylko jedno zamówienie dla niepowtarzającego się klienta, jeżeli to pomyłka to nie wiem po co w ogóle wyciągać tych którzy nas nie interesują bo łatwiej policzyć tych co chcemy:


select 
    SalesRep
    ,Hour
    ,Count(*) ilezamowien
from (
    select 
       nrOrder
       , SalesRep
       , CustomerName
       , Hour 
    from 
       tt
    group by 
       nrOrder, SalesRep, CustomerName, Hour
    having 
       count(customerName) = 1
    ) dt
group by
    SalesRep
    ,Hour

Pozostało 580 znaków

2018-11-21 16:30
1

Może po prostu to zgrupować jeszcze raz i wtedy masz pojedyncze rekordy czyli sprzedaż.

SELECT
    NrOrder
    SalesRep
    Customer
    Hour
FROM
    TABELA
GROUP BY
    NrOrder
    SalesRep
    Customer
    Hour

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0