Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: sortowanie według kilka kolumn
Forum PHP.pl > Forum > Bazy danych > MySQL
acztery
witam

mam takie zapytanie

SELECT id, parent as 'Kategoria', `name` as 'Tytuł', `datepub` as 'Data publikacji' , act AS 'Status treści / porady', id AS 'Użytkownik' FROM modules_desc WHERE modules='2' ORDER by b1 DESC, b2 DESC ,dateadd DESC

Sortuje wszysto ładnie. Ale ja chcę aby:
1 porca rekordów z b1 było od najnowsze do najstarszek
2 porca to samo z b2 od najnowsze do najstarczesz

czyli np mamy

na początku listy te rekordy gdzie b1=1 potem b2=1 potem reszta posortowane według daty

ale np te co b2=1 sa byle jak a w nich tez ma byc wedlug daty...
zaksmok
  1. SELECT id, parent AS 'Kategoria', `name` AS 'Tytuł', `datepub` AS 'Data publikacji' , act AS 'Status treści / porady', id AS 'Użytkownik', (b1+b2) AS sorting_value FROM modules_desc WHERE modules='2' ORDER BY sorting_value DESC ,dateadd DESC


Jeśli wartości mają stany 0 lub 1
thek
Na pewno nie są byle jak, ale zapewne według daty, tylko masz skopany zapis formatu daty. Niech zgadnę... Nie masz daty jako timestamp czy date, ale jako zwykły varchar wink.gif W takim wypadku 22-03-2011 za żadne skarby nie może być większy niż 03-12-2010, bo przy sprawdzaniu 03 jest mniejsze niż 22 biggrin.gif Ty lepiej zobacz jaki masz format daty bo tutaj według mnie będzie problem. Gdyby było dobrze, to ORDER BY jaki masz zadziałałby prawidłowo, bo samo zapytanie JEST prawidłowe. Jedyny problem więc jaki może być przyczyną to nieprawidłowa struktura kolumn, a właściwie niewłaściwy typ.
acztery
typ kolumny dateadd to data a b1ib2 to int,

EDIT dziala ORDER by b1 DESC, b2 DESC ,dateadd DESC

nie dzialalo wczesniej by dane szły z cache..... biggrin.gif dzieki zaksmok twoje nie dziala... bo najnoszy rekord mam jakis na gorze a zapomnialem przy okazi dodac ze b1 i b2 nie moga miec razem ustawione 1 albo jedną ma 1 albo drugie.

thek
No i widzisz... Odrobina samodzielnego wysiłku się przydała zapewne smile.gif Oby tak dalej i dobrze, że zamieściłeś przyczynę problemu. Może komuś ten post także pomoże. A... I najważniejsze... Gratuluję pokonania problemu smile.gif
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.