Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zestawienie sum i case
kamelek
post 31.08.2012, 05:47:11
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 13.03.2011

Ostrzeżenie: (0%)
-----


Witam.

Chciałbym prosić o pomoc w sprawie takiego zestawienia

mam tabela_1 w formie (skróconej)

  1. id_indeksu, ilosc, id_kontrahenta, data_sprzedazy


Teraz tworze zapytanie zliczajace mi ilosć sztuk sprzedanych w danym okresie dla danego indeksu np.

  1.  
  2. SELECT id_indeksu, sum(ilosc) FROM tabela_1
  3. WHERE
  4. data_sprzedazy < '2012-02-01' AND data_sprzedazy > '2012-01-01'
  5. GROUP BY id_indeksu
  6.  


I teraz moje pytanko jak mozna zrobic aby dodac kolejną kolumne w ktorej bedzie informacja czy ten indeks był sprzedawany danemu klientowi np o id 19

Czyli np.

  1. id_indeksu | ilość | czy_kupił
  2. ---------------------------------
  3. 121 | 300 | NULL
  4. 223 | 230 | tak
  5. 453 | 189 | NULL


Próbowałem z CASE ale mi wtedy rozbija ilosci i nie grupuje według id_indeksu
Czy mogę liczyć na pomoc w tej sprawie?

Pozdrawiam
Go to the top of the page
+Quote Post
skowron-line
post 31.08.2012, 07:15:16
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Spróbuj zrobić podzapytanie do którego będziesz przekazywał id_indexu, a w nim sprawdzał czy dany klient kupił dany produkt


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
mmmmmmm
post 31.08.2012, 07:38:08
Post #3





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

Ostrzeżenie: (0%)
-----


  1. SELECT id_indeksu, sum(ilosc), Sum(case when id_kontrahenta=19 then 1 end) FROM tabela_1
  2. WHERE
  3. data_sprzedazy < '2012-02-01' AND data_sprzedazy > '2012-01-01'
  4. GROUP BY id_indeksu
Go to the top of the page
+Quote Post
kamelek
post 31.08.2012, 08:12:03
Post #4





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 13.03.2011

Ostrzeżenie: (0%)
-----


skowron-line, no udało się ale troszkę na około smile.gif

dzięki mmmmmm takie proste się to wydaje teraz smile.gif

Pozdro
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.04.2024 - 17:48