Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z zapytaniem
artur81
post
Post #1





Grupa: Zarejestrowani
Postów: 252
Pomógł: 2
Dołączył: 4.12.2004
Skąd: Skierniewice

Ostrzeżenie: (10%)
X----


Mam 4 tabele w bazie o strukturach

DEALBUMY - niemieckie nazwy albumów ze zdjęciami
idalbde - identyfikator albumu
idkatde - id kategorii w której jest album
nazwaalbde - nazwa albumu

ENALBUMY - angielskie nazwy albumów ze zdjęciami
idalben - identyfikator albumu
idkaten - id kategorii w której jest album
nazwaalben - nazwa albumu

DEKATEGORIE - niemieckie nazwy kategorii w ktorych są albumy
idkatde - id kategorii
nazwakatde - nazwa kategorii

ENKATEGORIE - angielskie nazwy kategorii w których są albumy
idkaten - id kategorii
nazwakaten - nazwa kategorii

chcę z niej pobrać dane do tabeli aby wyglądały mniej więcej tak
pole1 - idalben/idalbde (ten sam numer, więc będę wyświetlał jeden)
pole2 - album nazwa angielska
pole3 - album nazwa niemiecka
pole4 - kategoria nazwa angielska/kategoria nazwa niemiecka



napisałem takie zapytanie, aby pobrać albumy w kategorii pierwszej ale zwróciło mi jakieś bzdury, problem jest w zapytaniu ale nie umiem poprawić
  1. SELECT idalben, nazwaalben, nazwaalbde, nazwakaten, nazwakatde
  2. FROM enalbumy, dealbumy, enkategorie, dekategorie
  3. WHERE enalbumy.idkaten = '1' AND dealbumy.idkatde = '1'

Chodzi o to aby utworzyć listę wszystkich albumów pogrupowanych wg kategorii, robię galerię i chcę móc przesuwać albumy zdjęć pomiędzy kategoriami, jakbym omyłkowo wstawił nie do tej co potrzeba.


--------------------
Go to the top of the page
+Quote Post
SongoQ
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


W from uzywasz enalbumy, dealbumy, enkategorie, dekategorie
ale w WHERE nie laczysz tych tabel. Dlatego dostajesz wszystko mozliwe kombinacje tych tabel


--------------------
Go to the top of the page
+Quote Post
artur81
post
Post #3





Grupa: Zarejestrowani
Postów: 252
Pomógł: 2
Dołączył: 4.12.2004
Skąd: Skierniewice

Ostrzeżenie: (10%)
X----


źle coś robię, probowałem tak
  1. SELECT idalben, nazwaalben, nazwaalbde, nazwakaten, nazwakatde
  2. FROM enalbumy, dealbumy, enkategorie, dekategorie
  3. WHERE enalbumy.idkaten = enkategorie.idkaten AND dealbumy.idkatde = dekategorie.idkatde

Jeżeli dobrze cię zrozumiałem to chodziło o połącznie pól
idkaten z tabeli enalbumy z idkaten z tabeli enkategorie i tak samo dla niemieckiej wersji, ale
nic to nie zmieniło, dalej wyrzuca mi wszystkie rekordy

Może coś niejasno napisałem, napiszcie to postaram się wytłumaczyć inaczej, ja nie mogę sobie poradzić

Ten post edytował artur81 8.08.2006, 12:22:49


--------------------
Go to the top of the page
+Quote Post
SongoQ
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Jeszcze zgubiles jeden warunek


--------------------
Go to the top of the page
+Quote Post
artur81
post
Post #5





Grupa: Zarejestrowani
Postów: 252
Pomógł: 2
Dołączył: 4.12.2004
Skąd: Skierniewice

Ostrzeżenie: (10%)
X----


Dzięki za naprowadzenie i za to że nie podałeś rozwiązania na talerzu. Często lepiej dojść samemu do rozwiązania, przy okazji doczytałem sobie o złączniach guitar.gif

Rozwiązanie
  1. SELECT idalben, nazwaalben, nazwaalbde, nazwakaten, nazwakatde
  2. FROM enalbumy, dealbumy, enkategorie, dekategorie
  3. WHERE enalbumy.idkaten = enkategorie.idkaten AND dealbumy.idkatde = dekategorie.idkatde AND enalbumy.idalben = dealbumy.idalbde


--------------------
Go to the top of the page
+Quote Post
SongoQ
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Cytat
Dzięki za naprowadzenie i za to że nie podałeś rozwiązania na talerzu

Przynajmniej Ty to doceniles. smile.gif


--------------------
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 Aktualny czas: 20.08.2025 - 14:31