Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Łączenie kolumn niezależnych tabel
janiek_j
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 31.07.2008

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


Witam, mam taki problem:
mam dwie tabele pierwsza np id name datetime_add
druga cos_id title cos_datetime_add

i teraz chce połączyć obydwie tabele aby wyglądały mniej więcej tak:
id name cos_id title datetime_add(połączona z cos_datetime_add)
chodzi o to ze pierwsza tabela zawiera komentarze a druga to posty obie są niezależne od siebie, chce je połączyć po to aby móc zrobić order na dacie i wyciągnąć np 20 ostatnich zdarzeń z tych 2 tabel ale nei wiem jak, kombinowałem z join'ami ale mi nie wychodziło, jakieś wskazówki?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Join nie służy do łączenia wyników zapytania ale powiązania jednej tabeli z drugą, także źle podchodzisz do tematu.
  1. MógłBYś wykorzystać UNION ale wtedy liczba zwróconych kolumn musi się zgadzać.
  2. Najłatwiej będzie TO zrobić w ten sposób
  3. [sql]
  4. (SELECT id, 'post' AS typ FROM forum_posts)
  5. UNION
  6. (SELECT id, 'comment' AS typ FROM comments)
  7. ORDER BY IF(post_datetime_add IS NOT NULL, post_datetime_add, datetime_add) DESC

Dostaniesz listę id elementów, które potem musisz pobrać oddzielnym zapytaniem.
Oczywiście staraj się ograniczyć wyniki w podzapytaniach.
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: 8.10.2025 - 05:12