![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 24.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Mam tabelę "kody".
------------------------- |a1|a2|b1|b2|c1|c2 | ------------------------- |2 |aa |2 |aa |2 |bb | |2 |aa |2 |bb |4 |bb | |2 |gg |3 |bb |4 |bb | |5 |gg |4 |gg |4 |gg | ------------------------- Chcę teraz połączyć kolumny w pionie a1 z b1 i c1 oraz a2 z b2 i c2 (tak jak poniżej) ---------- |a1 | a2 | ---------- | 2 | aa | | 2 | aa | | 2 | gg | | 5 | gg | ---------- |b1 | b2 | ---------- | 2 | aa | | 2 | bb | | 3 | bb | | 4 | gg | ---------- |c1 | c2 | ---------- | 2 | bb | | 4 | bb | | 4 | bb | | 4 | gg | ---------- i obliczyć ile jest w drugiej kolumnie kodów aa, bb i gg. Warunek jest taki, że interesują mnie tylko te wartości z drugiej kolumny, które mają w pierwszej kolumnie wartość "2". Wynik więc powinien wyglądać tak: aa jest 3 bb jest 2 gg jest 1 Wiem, że trzeba zastosować ALIASY kolumn i polecenie GROUP BY. Za nic jednak nie mogę uzyskać takiego wyniku. Proszę was o wsparcie. Ten post edytował teom 24.10.2006, 13:27:58 |
|
|
![]() ![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 569 Pomógł: 0 Dołączył: 17.08.2003 Skąd: Dąbrowa Górnicza Ostrzeżenie: (0%) ![]() ![]() |
zalezy ci na elastycznosci ? wydajnosci ? czy poprostu na rozwiazaniu ? bo szczerze mowiac to niezle pokiełasione to jest.
Cytat Chcę teraz połączyć kolumny w pionie a1 z b1 i c1 oraz a2 z b2 i c2 (tak jak poniżej) a ponizej pokazyjesz 3 a nie jak napisałes 2 tablice. Wiec moze by tak ujednolicic tresc posta, to moze cos wymyslimy. A jak chcesz sprawdzac ile jest rekordow danej wartosci to zrob 3 zapytania i zsumuj sobie te wartosci i bedziesz mial -------------------- Warsztat: Linux: PHP, MySQL, Apache, NetBeans, C++, Qt-Creator
Użytkownik, słowo którego specjaliści IT używają, gdy chcą powiedzieć idiota Zarządzaj swoim budżetem domowym |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 24.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Tabela "kody" zawiera 6 kolumn i a1, a2, b1, b2, c1, c2. Chcę ją teraz przekształcić (na czas zapytania mysql), tak aby pogrupować wartości z kolumn a2, b2, c2 pod warunkiem, że w kolumnie a1, b1, c1 znajduje się wartość 2.
Nie wiem jak prościej mogę to wytłumaczyć. Zależy mi na szybkości działania i wiem, że da się to zrobić w jednym zapytaniu. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 726 Pomógł: 20 Dołączył: 8.12.2005 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Jak już napisałem ci w crospotowanym temacie, użyj SUM i Count.
I to powinno wystarczyć ew. to zagnieźć. A ty też powtórze, że wygląda mi to na zadanie domowe. A tych że o ile wiem nie rozwiązuje się za kogoś Ten post edytował Wykrywacz 24.10.2006, 14:53:03 |
|
|
![]() ![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 569 Pomógł: 0 Dołączył: 17.08.2003 Skąd: Dąbrowa Górnicza Ostrzeżenie: (0%) ![]() ![]() |
W jednym zapytaniu nie wiem jak polaczyc sumy, ale mozesz probowac po tym zapytaniu sumowac, albo wpisac to do jednej tablicy a pozniej sumowac -------------------- Warsztat: Linux: PHP, MySQL, Apache, NetBeans, C++, Qt-Creator
Użytkownik, słowo którego specjaliści IT używają, gdy chcą powiedzieć idiota Zarządzaj swoim budżetem domowym |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 24.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Chyba innego sposobu nie ma - dzięki serdeczne Sh4dow.
"Wykrywacz" - zadania skończyłem odrabiać 10 lat temu, na studiach. Teraz uczę się php i MySql stąd moje pytanie na tym forum. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.06.2025 - 23:22 |