Поиск SQL по дням (понедельник) в php, с полем datetime в SQL

В 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 🙂

0

Решение

Если, как видно из вашего примера даты, вы хотите, чтобы каждая строка 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";
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]