PHP - SQL搜索天(星期一)在PHP,而有datetime字段在SQL


PHP - SQL Search by day(Monday) in php while having datetime field in 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:)

如果从您的示例日期中显示,您希望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";