В SQL у меня есть поле «myDate» с форматом yyyy-mm-dd hh:mm:ss
На странице PHP у меня есть поле поиска, которое вводит только WEEKDAY, и я хочу показать все данные только за этот день.
Например:
Поиск: понедельник
Date mydata
---------- ------- ------
2014-10-27 16:44:26 123
2015-11-05 09:20:55 45
2015-11-12 10:00:27 234
2015-11-19 22:38:45 678
Пожалуйста, ответьте только с помощью PHP-кода или SQL-запроса. Tq 🙂
Если, как видно из вашего примера даты, вы хотите, чтобы каждая строка myDate
это, например, понедельник, то вы можете использовать SQL WEEKDAY()
функционировать так
SELECT * FROM table
WHERE WEEKDAY(myDate) = 0
Так что если в PHP у вас есть
<?php
$days = array( 'monday' => 0 , 'tuesday' => 1,
'wednesday' => 2 , 'thursday' => 3,
'friday' => 4 , 'saturday' => 5,
'sunday' => 6 );
$day = 'Monday';
$day_code = $days[strtolower($day)];
$sql = "SELECT * FROM table WHERE WEEKDAY(myDate) = $day_code";
Других решений пока нет …