Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z porównywaniem wyrażeń
morris4life
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 31.05.2008

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


jak napisać wyrażenie SQL które wyszuka wartość najbardziej odpowiadającą wzrocowi.
dokładnie chodzi o porównywanie dat.

przykład:
w tabeli są wiersze z datami 2008-05-01, 2008-05-04. Wzorzec to 2008-05-02. Zapytanie ma zwrócić datę najbliższą, czyli 2008-05-01

z góry dziękuję za pomoc....wszelkie podpowiedzi, linki, lub rozwiązania mile widziane (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Sprawa PILNA na wczoraj (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Wodzu
post
Post #2





Grupa: Zarejestrowani
Postów: 13
Pomógł: 2
Dołączył: 17.09.2005

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


A może tak:
  1. SELECT * FROM tabela WHERE DATA!='$data_bazowa' AND ABS(DATEDIFF(DATA,'$data_bazowa'))=MIN(ABS(DATEDIFF(DATA,'$data_bazowa')))

lub tak:
  1. SELECT * FROM tabela WHERE DATA!='$data_bazowa' ORDER BY ABS(DATEDIFF(DATA,'$data_bazowa')) LIMIT 1

Improwizuję, nie sprawdzałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Polecam funkcje daty i czasu w MySQL

Pozdr.
Wodzu

Ten post edytował Wodzu 31.05.2008, 19:27:37
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 - 09:34