Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sortowanie dwóch różnych kolumn w dwóch tabelach
Forum PHP.pl > Forum > Bazy danych > MySQL
dudi88
Witam,

Proszę o pomoc osób, które mogą mi pomóc smile.gif

W bazie danych potrzebuję posortować dwie kolumny względem siebie, które znajduja sie w różnych tabelach.

Pierwsza nazwa tabeli nazywa się "product" a jej kolumna nosi nazwę "sort_order".
Druga nazwa tabeli nazywa się "order_product" a jej kolumna nosi nazwę "quantity".

Zadanie polega na tym, aby produkty były posortowane według kolejności ważniejszejszych i mniej ważnych. Na 1 miejscu maja być produkty sortowane według kolejnośći sortowania (tabela "product"), następnie produkty od największej ilości sprzedaży (tabela "order_product").

Mam takiej zapytanie w bazie: SELECT product.sort_order, order_product.quantity FROM product INNER JOIN order_product ORDER BY `order_product`.`quantity` DESC

jednak wynik tego zapytania zwraca wartości nie powiązane z rzeczywistymi rekordami. Po prostu nie wiem skąd sie wzięły :|


Czy jest tu jakiś magik SQL, który może mi pomóc ?


Pozdrawiam
nospor
Jak robisz jakikolwiek JOIN to musi on zawierac ON ktore okresla po jakich polach laczysz tabele - patrz manual.
Do tego zaden magik nie jest potrzebny
dudi88
Dzięki za odpowiedź.

Zrobiłem costakiego: SELECT sort_order FROM product INNER JOIN order_product ON product.sort_order=order_product.quantity ORDER BY `product`.`sort_order` DESC

jednak sortowanie produktów sklepie dalej nie jest prawidłowe.
nospor
ON product.sort_order=order_product.quantity
No ale co to jest? Rekordy chyba lacza sie ze soba przez jakies ID a nie przez kolejnosc, no nie?
dudi88
No tak smile.gif
Dzięki. To powinno być OK: SELECT product.sort_order, order_product.quantity FROM product INNER JOIN order_product ON product.product_id=order_product.product_id ORDER BY product.sort_order DESC
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.