Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql + php]wynik z dwoch tabel
Forum PHP.pl > Forum > Przedszkole
Regyam
A więc czy wie ktoś jak zrobić coś takiego:
Mam jedną tabele:
oceny (id_data, sumaglosow, iloscglosow)
data (id, tytul, tresc)
Chce to polaczyc w jednym zapytaniu, oraz zeby posegregowalo wszystkie wyniki z data wedlug oceny sumaglosow/iloscglosow. Próbowałem to z LEFT JOIN ale to mi kompletnie nie wychodzi, nie znalazłem nawet żądnego manuala polskiego z JOINami
Statozor
  1. <?php
  2. $sql = 'SELECT * FROM oceny, data WHERE data.id = oceny.id_data ORDER BY oceny.sumagloso
    w/oceny.iloscglosow'
    ;
  3. ?>

Powinno działać
Regyam
a jak chce pozniej na przyklad wyswietlic wszystkie wyniki z limitem 10 to jakie zapytanie i jak to w php napisac zeby wysiwetlalo dane z jednej i drugiej bazy snitch.gif?
Statozor
Dodajesz jeszcze frazę LIMIT 0,10. Aha i ten ORDER BY jest skopany pisałem to w amoku. Dodaj jeszcze jedno pole które bedzie trzymać ocenę i przez niego sortuj
Regyam
  1. SELECT *, oceny.sumaglosow/oceny.iloscglosow AS ocena FROM oceny, DATA WHERE DATA.id = oceny.id_data ORDER BY ocena DESC LIMIT 0, 10

Na PMA odpaliło poprawnie, btw jak chce to w php myswietlic to tak:
  1. <?php
  2. $sql = "SELECT *, oceny.sumaglosow/oceny.iloscglosow AS ocena FROM oceny, data WHERE data.id = oceny.id_data ORDER 
    BY ocena DESC LIMIT 0,10"
    ;
  3. $res = mysql_query($sql, CONNECT);
  4. for($i=0; $i<@mysql_num_rows($res); $i++){
  5. $row = mysql_fetch_array($res);
  6. //i tutaj wyswietlic tak:
  7. print "$row[tytul] , $row[tresc], $row[ocena] <br>"
  8. //czy tak:
  9. print "$row[data.tytul] , $row[data.tresc], $row[ocena] <br>"
  10. }
  11. ?>
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.