Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL]Grupowanie tylko część rekordów
chemiqs
post 16.03.2017, 12:34:32
Post #1





Grupa: Zarejestrowani
Postów: 110
Pomógł: 2
Dołączył: 2.06.2012

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


hej
Mam tabelę z przelewami o takiej strukturze:

id | konto | waluta | kwota | data_ksiegowania |

Wszytkie rekordy chcę grupować po dacie ksęgowania i wypisywać sumę zapłaconą.
Ale są pewne konta których nie chcę brać do grupowania. I tu stanałem.

SELECT count(konto) as licznik, konto, Data_Ksiegowania
FROM przelewy
group by data_ksiegowania, case when konto = "PL987" then NULL else konto END


Ogólnie efekt ma być taki:

LICZNIK | KONTO | DATA_KSIEGOWANIA
1 | PL987 | 2017-01-05
1 | PL987 | 2017-01-06
8 | PL999 | 2017-01-05
3 | PL888 | 2017-01-05


Nie wiem czy dobrze tłumaczę ale chcodzi mi o to żeby robił mi counta i liczył na pewnych kontach a na pewnych juz nie - i na tych co ma nie grupowc ma po prostu je wypluć - każdy rekord po kolei.

dzieki

Ten post edytował chemiqs 16.03.2017, 12:37:28
Go to the top of the page
+Quote Post
trueblue
post 16.03.2017, 12:45:36
Post #2





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1827
Dołączył: 11.03.2014

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


Chodzi Ci o to aby rekordy z pewną pulą kont grupować, a z pozostałą pulą, nie, i całość wyświetlić?

  1. SELECT count(konto) AS licznik, konto, Data_Ksiegowania
  2. FROM przelewy
  3. GROUP BY IF(konto="PL987",data_ksiegowania,id)


To zapytanie pogrupuje konta z PL987, a pozostałe pozostawi jako pojedyncze. Zakładam, że id jest unikalne.


--------------------
Go to the top of the page
+Quote Post
chemiqs
post 17.03.2017, 12:44:26
Post #3





Grupa: Zarejestrowani
Postów: 110
Pomógł: 2
Dołączył: 2.06.2012

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


hejka - pomogło bardzo - dzięki serdeczne, ale powiedz mi jeszcze jak można uzyc kilku kolumn w tym if-ie.
Jedno pole mi nie wystarcza. Można grupować multi?questionmark.gif

Zwykłe grupowanie w select działa na multicolumn - a tu mi krzyczy że nie lubi kilku kolumn.

Ten post edytował chemiqs 17.03.2017, 12:48:18
Go to the top of the page
+Quote Post
trueblue
post 17.03.2017, 12:52:31
Post #4





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1827
Dołączył: 11.03.2014

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


Musisz dodać tyle IF, po ilu kolumnach chcesz grupować.


--------------------
Go to the top of the page
+Quote Post
chemiqs
post 21.03.2017, 08:58:20
Post #5





Grupa: Zarejestrowani
Postów: 110
Pomógł: 2
Dołączył: 2.06.2012

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


super - działa pięknie

dzięki
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: 7.07.2025 - 11:21