Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Sortowanie zapytania
Goliat
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 9.07.2003

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


Strona wygląda jak terminarz. Kiedy użytkownik na nią wchodzi z tabeli wyszukiwane są wszystkie sprawy na dzień dzisiejszy. Aktualna godzina musi znaleźć się jako pierwsza, później w kolejności rosnącej.
Na MsSQL jest taki patent:
[sql:1:f3205f3058] SELECT Pole1, godz FROM Tbl
ORDER BY CASE godz WHEN Hour(getdate()) THEN -1 ELSE godz END[/sql:1:f3205f3058]
zamieniając aktualną godzinę na -1 i sortując rosnąco całość układa się tak jak bym chciał.

Próbowałem jakoś tak:
[sql:1:f3205f3058]SELECT Pole1, godz FROM Tbl
ORDER BY ABS(godz-Hour(Now())
[/sql:1:f3205f3058]
Różnica tych samych wartości da zero a reszta będzie miała wartość dodatnią. ABS-wartość bezwzględna.
Tak sobie to wymyślałem ...

Jak wygląda funkcja CASE (czy wogóle jest) w MySql?
Czy wiecie jak uzyć ABS?
Czy ktoś miał podobny problem i jakoś go obszedł?


--------------------
------
"Nienawiść jest cnotą"
Ahron z rodu Blood Dragonów
Go to the top of the page
+Quote Post

Posty w temacie
- Goliat   Sortowanie zapytania   1.10.2003, 18:24:02
- - uboottd   SELECT Pole1, godz FROM Tbl ORDER BY godz DESC   1.10.2003, 19:49:23
- - Goliat   Chyba się jasno nie wyraziłem   1.10.2003, 20:00:18
- - uboottd   SELECT Pole1, godz FROM Tbl ORDER BY if(godz=hour...   1.10.2003, 20:22:59
- - Goliat   Prostota - to jest to   1.10.2003, 20:26:42


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 03:31