Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Pobranie 2 danych z 1 pola.
-lukasamd-
post
Post #1





Goście







Witam,
mam skrypt forum, chciałbym pobrać dane:

- id forum
- id tematu
- id posta
- nazwa forum
- nazwa tematu
- id autora tematu
- id autora postu
- nick autora tematu
- nick autora postu

Dane są w tabelach:
- users
- forums
- threads

Niestety, ale w tabeli threads nie są zapisywane nicki ani autorów ani ostatnich postujących w danych tematach, muszę to więc wyciągnąć z dodatkowej tabeli users - chciałbym wyciągnąć całość przy użyciu jednego zapytania.

Na razie mam tyle:

  1. SELECT t.forum_id, t.thread_id, t.thread_subject, t.thread_author, t.lastpost_id, t.thead_lastuser, t.thread, f.forum_name, u.user_name, u.user_name AS poster_nick


Jak widać, mam 2 razy pobierane user_nick, jak mam zaznaczyć, iż jedno ma dotyczyć usera z id określonego za pomocą thread_author a drugie usera z id = thead_lastuser?

Ten post edytował lukasamd 8.11.2008, 18:58:05
Go to the top of the page
+Quote Post
ayeo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 202
Pomógł: 117
Dołączył: 13.04.2007
Skąd: 127.0.0.1

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


Witam!

To są absolutne podstawy! Zapraszam do przeczytania manuala. Szukaj: JOIN

Pozdrawiam!
Go to the top of the page
+Quote Post
-lukasamd-
post
Post #3





Goście







Nie chcę używać JOIN, niepotrzebne mi łączenie całych tabel. Wiem jak połączyć po wspólnym polu bez użycia JOIN.

Ten post edytował lukasamd 8.11.2008, 19:46:08
Go to the top of the page
+Quote Post
phpion
post
Post #4





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




~ayeo dobrze prawi. Musisz ponownie dołączyć tabelę użytkowników ale tym razem na innym warunku, np.
  1. SELECT a.*, b.user_name AS thread_author_name, c.user_name AS thread_lastuser_name FROM threads a LEFT JOIN users b ON b.id = a.thread_author LEFT JOIN users c ON c.id = a.thread_lastuser;

Coś w tym stylu. Musisz tylko przystosować tą ideę do swojego zapytania.
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: 22.08.2025 - 21:55