Falcon2
7.02.2009, 12:43:18
Witam
Mam pytanie - posiadam zapisaną w bazie mysql datę w formacie unixowym ( time() ). Z sortowaniem wg. daty nie ma problemów, natomiast problem pojawia się w momencie przeszukiwania bazy - np. wyników z wybranego dnia 01.01.2009. Co moglibyście mi zaproponować w budowaniu takiego zapytania? (pobierając wybraną datę i aktualną ->zamieniając je na unixowy i danie dwóch warunków - czy mieści się data w danym przedziale? - tylko takie rozwiązanie przychodzi mi do głowy)
A nie możesz szukanej daty zamienić na unixowy znacznik i wyszukać w ten sposób?
adasiu
7.02.2009, 13:02:00
SELECT * FROM `tablica` WHERE FROM_UNIXTIME(`twoja_data`, '%Y-%m-%d') = '2008-05-12';
pisane z palca tak więc pewności nie mam, ale ogólnie za pomocą funkcyjki FROM_UNIXTIME

pozdrawiam
kefirek
7.02.2009, 13:02:33
Można tak
<?php
$wynik = mysql_query("SELECT * FROM test WHERE DATE(FROM_UNIXTIME(data)) > '2008-05-12'"); ?>
A jak chcesz te co data równa sie dzis to robisz tak
<?php
$wynik = mysql_query("SELECT * FROM test WHERE DATE(FROM_UNIXTIME(data)) = CURDATE()"); ?>
Falcon2
7.02.2009, 13:03:37
wielkie dzięki - liczyłem na jak najlepszą metodę i ją dostałem