Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> kwerenda krzyżowa w postgresql-u, z pogranicza php i sql-a
emmjot
post 29.10.2007, 10:53:22
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.10.2007

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


Witam,

Potrzebuję zrobić kwerendę krzyżową ale w postgresl. W Access jest taka dodatkowa opcja ale jak sobie z tym poradzić w postgres?

Struktura:

Projekty:

Username|Projectname|Subprojectname|Date|

Projectname|Subprojectname|1-01-2007|2-01-2007|3-01-2007|4-01-2007|.......
Projekt1......|Podprojekt11....|2 h..........| 4 h..........|3 h..........| 4 h.........|......
Projekt2......|Podprojekt21....|3 h..........| 5 h..........|6h...........|8h...........|......
Projekt3......|Podprojekt.31...|3 h..........| 5 h..........|6h...........|8h...........|......
Projekt3......|Podprojekt.32...|3 h..........| 5 h..........|6h...........|8h...........|......
Projekt4......|Podprojekt.42...|3 h..........| 5 h..........|6h...........|8h...........|......

W wierszach mają się wyświetlać nazwy projektów i podprojektów. W kolumnach data (każdy dzień) obejmująca 1 miesiąc kalendarzowy. Na ich przecięciu wyświetlą się godziny (ile godzin dziennie zostało przypisane na dany projekt i odpowiadający mu podrojekt). Cała tabela ma wyświetlać dane o jednym użytkowniku (username).

Dane z tej tabeli mają się wyświetlać pod warunkiem, że dana nazwa projektu jest równa nazwie występującej w drugiej tabeli, z nazwami tzw. słownikowymi (gotowymi).

Nie wiem niestety jak poradzić sobie z wyświetleniem takiej struktury w na stronie www, przy użyciu php i postgresql-a.

Zapytanie do bazy mam takie:

SELECT * FROM projekty INNER JOIN slownik_projekty ON slownik_projekty.projectname=projekty.projectname WHERE username='imie.nazwisko' order by projectname, subprojectname, date;

Zapytanie działa dobrze w konsoli, tzn wybiera faktycznie te wartości które powinno. Ale problem się robi przy wyświeltaniu ich w tej tabeli o wyżej podanej strukturze na stronie www.

Bardzo proszę o pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
szumigt
post 14.04.2008, 13:59:01
Post #2





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 5.10.2007

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


Nie wiem czy to nadal aktualne ale ... dokładnego rozwiązania nie podam bo to sporo do pisania ale poszukaj w googlach o pivot tables w postgresql. Od wersji 8.3 w dokumentacji jest opisany moduł tablefunc. Powinno pomóc
Go to the top of the page
+Quote Post

Closed 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: 13.08.2025 - 23:28