Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [sql]Pobranie jednocześnie danych z 2 tabel - problem
Joachim Peters
post
Post #1





Grupa: Zarejestrowani
Postów: 196
Pomógł: 2
Dołączył: 1.03.2006

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


Załóżmy ze mam dwie tabele download_cats i download_files, w tabeli download_cats są kategorie główne - gdzie w kolumnie cat jest 0 i podkategorie z ID kategorii nadrzędnej. Na początku zwykłym zapytaniem pobieram główne kategorie i wyświetlam je w pętli, jednak w tej pętli chciałbym aby były generowane także podkategorie z tym, że przy każdej z nich ma być wyświetlana liczba plików w tej kategorii.

struktura tych tabel:
download_cats:
- id,
- title,
- cat

download_files:
- id,
- title,
- cat

Próbowałem coś robić, ale pobiera mi dziwne wyniki ;/.

EDIT, zrobiłem coś takiego:
  1. <?php
  2. $sql = 'SELECT c.id, c.title, COUNT(f.id) as records
  3. FROM ' . $this->table . '_files f LEFT JOIN ' . $this->table . "_cats c
  4. ON f.cat = c.id
  5. WHERE c.cat = $id
  6. GROUP BY c.title
  7. ORDER BY c.title";
  8. ?>

wyświetla dobrze dane, ale nie pokazuje kategorii gdzie nie ma plików.

Ten post edytował Joachim Peters 1.03.2008, 09:15:29
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
woj_tas
post
Post #2





Grupa: Zarejestrowani
Postów: 230
Pomógł: 36
Dołączył: 31.03.2006
Skąd: Zielona Góra

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


Spróbuj tak:
  1. <?php
  2. $sql = 'SELECT c.id, c.title, COUNT(f.id) as records
  3. FROM ' . $this->table . '_cats c LEFT JOIN ' . $this->table . '_files f 
  4. ON f.cat = c.id
  5. WHERE c.cat = $id
  6. GROUP BY c.title
  7. ORDER BY c.title';
  8. ?>


Ten post edytował woj_tas 1.03.2008, 09:56:26
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.12.2025 - 22:47