Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql] jak zlaczyc dwa zapytania w jedno
yalus
post
Post #1





Grupa: Zarejestrowani
Postów: 281
Pomógł: 0
Dołączył: 8.07.2005
Skąd: EU

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


czesc

mam oto takie dwa zapytania:

  1. <?php
  2. $zapytanie="Select count(id_c) as numrows from comments where id=".$row['id'];
  3. $result_total = mysql_query($zapytanie) or die('-' );
  4. $ilosc = mysql_fetch_array($result_total, MYSQL_ASSOC);
  5. $ilosc_comm = $ilosc['numrows'];
  6.  
  7. $zapytanie="Select count(id_c) as numrows from comments where ocena='1' and id=".$row['id'];
  8. $result_1 = mysql_query($zapytanie) or die('-' );
  9. $ilosc_1 = mysql_fetch_array($result_1, MYSQL_ASSOC);
  10. $ilosc_comm_1 = $ilosc_1['numrows'];
  11. ?>


Jest to fragment kodu zywcem wyjety ze skryptu. Jak widac nie sa one za bardzo skomplikowane oraz to ze sa bardzo podobne do siebie.
W pierwszym chce wyciagnac wszystkie komentarze o zadanym ID a w drugim chce wyciagnac komentarze o tym samym ID co w pierwszym ale tylko takie gdzie ocena=1

pytanie moje jest takie: czy jest mozliwe skonstruowanie jednego zapytania przy pomocy ktorego uzyskam ten sam wynik?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Kicok
post
Post #2





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


LEFT JOIN + GROUP BY + COUNT()

Łączysz obie tabele przy pomocy: category.id = tytul.id_cat i grupujesz po category.id


PS. Warto też zamienić "tytul" na "title" i "ocena" na "mark". Jak po angielsku, to po angielsku ;]

Ten post edytował Kicok 1.08.2008, 15:34:40
Go to the top of the page
+Quote Post

Posty w temacie


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: 9.10.2025 - 01:33