Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dwa zapytania w jednym polaczeniu
Forum PHP.pl > Forum > Bazy danych
boya
mam problem smile.gif

lacze sie z baza danych xxx i pobieram z jednej tablicy jeden wynik ( 1 zapytanie) i z drugiej tablicy ( 2 wynik ) jak mam to napisac zeby laczac sie raz wykonac dwa zapytania po dane z 1 i 2 tablicy questionmark.gif?

[KaMeLeOn]: Wątek przesunięty z php...
Jabol
zrób joina. Union lub Join powinno załatwić sprawe. Tylko uważaj, żeby dobrze to sformuować
boya
A moglbym prosic o urywki kodu questionmark.gif
Jabol
A mógłbyś włożyć troche sił w znelezienie rozwiązania. Powiem ci tylko różnice pomiędzy union a join. Union łączy dwa zapytania select ustawiając wynik jednego zapytania za drugim. Joiny natomiast łączą tabele za pomocą wspólnych wartości, tworząc połączenia dodając do pól jednej tabeli pola drugiej na poziomie wierszy. Polecam dokumentacje postgresql'a, w której jest to wszystko ładnie opisane.

PS.
Jak możesz mnie prosić o kod, jeżeli ja nie wiem co chcesz zrobić oraz jaki efekt chcesz osiągnąć?
boya
Mam dwie tabele komentarz i news

Na jednej stronie mam newsa i pobnierany on jest z tabeli news pod spodem przy kazdym newsie jest komentarz i komentuj chce alby bylo cos takiego

NEWS

KOMENTARZE (ilosc) KOMENTUJ

wszytko mam zrobione juz tylko jak mam pobrac ta ilosc z tabeli komentarze gdzie id komentarza jest rowne id news wiec w tabeli komentarze mam 100 komentarzy o id 1 i jak zliczyc to 100 i zeby wyswietlic razem z reszta w jednym polaczeniu laczac sie naraz z dwoma tabelami questionmark.gif?
Jabol
To pewnie będzie coś takiego:
Kod
SELECT

    n.id id, n.tresc tresc, n.data data, count(k.*) ilosc

FROM

    news n, komentarze k

WHERE

    n.id = k.nid

GROUP BY

    k.nid;
Kod jest podany dla wywyślonej przeze mnie struktury
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.