Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zaptanie do 2 tabel a sortowanie
Forum PHP.pl > Forum > PHP
sebian
Witam
mam sobie takie zapytanie
  1. $articles = mysql_query("SELECT a.*, ac.tytul tytul_kat FROM articles a
  2. LEFT JOIN articles_categories ac ON ac.id = a.id_cat
  3. ORDER BY a.id_cat, as.tytul");


ale potrzebuje wyciagnąć rekord "tytul" z tabeli "articles_categories" aby go posortować według ASC czyli zamiast:
  1. ORDER BY a.id_cat, AS.tytul");

potrzebuje
  1. ORDER BY "tytul z articles_categories " ASC);


jakies sugestie biggrin.gif
mike
  1. SELECT a.*, ac.tytul FROM articles a
  2. LEFT JOIN articles_categories ac ON ac.id = a.id_cat
  3. ORDER BY ac.tytul
?
pablo89pl
ORDER BY ac.tytul ASC
sebian
Właśnie też do tego teraz doszedłem ze ma byc ORDER BY ac.tytul ASC.

Kolega mike mnie naprowadził smile.gif dzieki wielkie smile.gif

Odświeżam:

Jak do tego zapytania
  1. $result = mysql_query("SELECT * FROM articles WHERE id='$id'");
  2. $row = mysql_fetch_array($result);

Dołozyc jeszcze odczytanie kolumny "tytul" z tabeli "articles_categories", te podwójne zapytania to moja zmora :/
pablo89pl
jakie masz powiazanie? w articles masz cat_id ?
Jesli tak to
SELECT *.a,title.c FROM articles A
JOIN articles_categories c ON c.id = a.cat_id
WHERE id='$id'
thek
To zależy od powiązania. Możesz jeden artykuł tylko w jednej czy wielu kategoriach umieścić? Jeśli tylko w jednej to luzik. Zwykły JOIN po wspólnym polu dla obu tabel. Jeśli masz jednak relację drugiego typu to zwróci Ci taki JOIN zapewne kilka wierszy i tutaj najlepiej użyć:
  1. SELECT a.*, GROUP_CONCAT( ac.tytul ) AS kategorie FROM articles a LEFT JOIN articles_categories ac ON a.id_cat = ac.id GROUP BY a.id
Zwróci Ci to kolumnę z wszystkimi kategoriami danego artykułu.
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.