Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Złożone zapytanie
C@rdel
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 14.09.2005

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


Witam, piszę właśnie swoje własne forum [tak bardziej na próbę (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ] i mam taki problem z połączeniem zapytań w jedno.
Mam trzy tabele [podaje tylko te pola które mają tu znaczenie]:

posts
| ID | author | date | topic |
{ topic oznacza ID tematu }
{ author oznacza ID autora }

topics
| ID | name |

users
| ID | name |

I teraz chciałbym za pomocą jednego zapytania pobrać: nazwy wszystkich tematów, z każdego tematu ostatni post oraz nicka autora tego postu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Do tej pory robiłem to tak, że jednym zapytaniem pobieralem tematy, a później dla kazdego oddzielnie ostatni post i autora.
Czy jest to w ogóle możliwe przy użyciu jednego zapytania ?
Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
NoiseMc
post
Post #2





Grupa: Zarejestrowani
Postów: 398
Pomógł: 10
Dołączył: 24.11.2004
Skąd: Łódź

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


Ja użyłbym podzapytań, niestety działają dopiero od na MySQL 4.1.

Przykładowy kod SQL:
  1. SELECT
  2. t . * ,
  3. (
  4. SELECT p.post_date
  5.  
  6. FROM posts p
  7. WHERE p.topic = t.ID
  8. ORDER BY p.post_date DESC LIMIT 1
  9. ) AS last_post,
  10. (
  11. SELECT u.name
  12.  
  13. FROM users u
  14. INNER JOIN posts p ON p.ID = t.ID
  15. WHERE u.ID = p.author
  16. LIMIT 1
  17. ) AS user_name
  18. FROM topics t
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: 7.10.2025 - 13:40