![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 28.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
w wyniku zapytania mam tablę ID | TEMAT_KONTROLI | MIASTO | TERMIN | KOMÓRKA 1 | sprawy kadrowe | opole | styczeń | wydz ogólny 2 | sprawy kadrowe | sopot | styczeń | wydz ogólny 3 | sprawy kadrowe | radom | kwiecień | wydz ogólny 4 | sprawy socjalne | toruń | czerwiec | wydz ogólny 5 | sprawy socjalne | plock | listopad | wydz ogólny 6 | sprawy socjalne | żagań | czerwiec | wydz ogólny 7 | zaległości brutto | sopot | wrzesień | oddział pierwszy 8 | zaległości brutto | opole | wrzesień | oddział pierwszy 9 | zaległości brutto | toruń | wrzesień | oddział pierwszy 10 | zaległości brutto | plock | listopad | oddział pierwszy 11 | zaległości brutto | radom | listopad | oddział pierwszy a muszę prezentować wyniki z pogrupowanymi/scalonymi komórkami, najpierw w zakresie TEMATU_KONTROLI a następnie KOMÓRKI. Tj. zamiast trzy razy wyświetlać sprawy kadrowe wyślietlić raz i analogicznie wydz ogólny - też raz. Jakieś pomysły jak to obsłużyć z poziomu MYSQL/PHP? Ten post edytował drawsko 13.08.2012, 12:24:30 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
google -> mysql group by
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 28.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
próbowałem już grupować po TEMAT_KONTROLI i moje wyniki są obcinane do 3 pozycji, potrzebuję mieć 11 pozycji.
Ten post edytował drawsko 13.08.2012, 13:09:46 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Napisz jak to dokładnie miałoby wyglądać - utwórz taką tekstową tabelkę.
-------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 28.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
zamiast spacji użyłem kreopek bo się na spacjach rozwalało
...|............................| opole | styczeń |..................... | 1 | sprawy kadrowe | sopot | styczeń | wydz ogólny | ...|............................|radom | kwiecień | .................. | -------------------------------------------------------------------- ...|...........................| toruń | czerwiec |.................... | 2 | sprawy socjalne | plock | listopad | wydz ogólny | ...|...........................| żagań | czerwiec | .................. | -------------------------------------------------------------------- itd Ten post edytował drawsko 13.08.2012, 13:27:44 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 291 Pomógł: 45 Dołączył: 21.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Ja bym to zrobił trochę na leniwca.
1) Pierwsze zapytanie pobrałoby wszystkie tematy kontroli (DISTINCT) i przepisało do tabelki wynikowej 2) Drugie zapytanie pobrałoby dane zbiorczo i wrzucało do tej samej tabelki wynikowej tylko już do odpowiedniej grupy koniec końców wyglądałoby to mniej więcej tak Kod array('sprawy_kadrowe' => array( kolejne rekordy ), 'sprawy_socjalne' => array( kolejne rekordy ), ... ) I na tej podstawie wygenerowałbym tabelkę html'em z zastosowaniem ROWSPAN i CSS. Rowspan się uda bo wiesz ile rekordów siedzi w głębi takiej tabelki. Może to trochę droga naokoło, ale z poziomu samej bazy danych drzewka nie uzyskasz, a do tego się sprowadza to co potrzebujesz. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 28.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
nie dodałem że wynik zapytania na 2012 rok daje mi 95 wyników i każdego roku będzie przybywać drugie tyle. Tylko ilość scalanych kolumn może być większa lub mniejsza.
Ten post edytował drawsko 13.08.2012, 13:42:53 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 12.06.2025 - 15:18 |