Выборка данных за определенный период

LDZ

Новичок
Trianon
Огромное спасибо. Надеюсь, у меня будет не много счастливчиков с ДР на 29 февраля ))
 

Viktor_Rez

Новичок
Проблем с високосным годом не будет.
PHP:
$timestp = strtotime("+15 day");
$data = date("Y-m-d",$timestp);

$sql = "SELECT `name` FROM `users` WHERE `dr` = '".$data."'";
 

Bitterman

Новичок
Trianon
Обычные, для тех, кому довелось родиться 29 февраля
гм, только сейчас узнал, что DATE_FORMAT ничего не возвращает, если дата неправильная :( Думал, что она как-то... разумнее, что ли.


LDZ
Надеюсь, у меня будет не много счастливчиков с ДР на 29 февраля
По хорошему на это не стоит рассчитывать. Лучше доработать один из двух вариантов. И знание MySQL тут ни при чем. Нужно просто добавить новые условия по аналогии с уже существующими.
 

Trianon

Новичок
Автор оригинала: Bitterman
гм, только сейчас узнал, что DATE_FORMAT ничего не возвращает, если дата неправильная :( Думал, что она как-то... разумнее, что ли.
Что-то подобное я и предполагал.
PHP:
$sql= "SELECT * FROM users 
WHERE 
  COALESCE(
    TO_DAYS(
       CONCAT(
         YEAR(NOW()), 
          DATE_FORMAT(bday, '-%m-%d')
       )
    ),
    TO_DAYS(
       CONCAT(
         YEAR(NOW()), 
         '-03-01'
       )
     )
   )
BETWEEN TO_DAYS(NOW()) AND $days_up+TO_DAYS(NOW())";
А так?
 

LDZ

Новичок
Trianon
Работает, только не знаю, как проверить насчет 29 февраля. А код конечно жестокий. Мозги сломать можно.

Буду потихоньку учить MySQL.

Спаибо огромное всем, кто помог мне.
 
Сверху