Вопрос по database, php, mysql – Mysql запрос: получить запрос на текущую дату

2

В базе данных MySQL у меня есть этот столбец под названием:

Имя Дата

Тип: дата и время

У меня есть несколько значений в этом столбце:

2009-01-05 01:23:35

2009-03-08 11:58:11

2009-07-06 10:09:03

Как получить текущую дату? Я использую php.

в php:

<?php $today = date('Y-m-d');?>

Как написать запрос MySQL для получения всех данных за сегодняшний день?

Если я изменю тип столбца на «дату», вставьте значения, такие как «2009-07-06». только, нет значений времени ???

Ваш Ответ

2   ответа
15

Вам не нужно использовать PHP, в MySQL есть функция для получения текущей даты:

SELECT field FROM table WHERE DATE(column) = CURDATE()

Документация:CURDATE, ДАТА.

Если для вашего столбца когда-либо потребуется только часть даты, а не время, вам следует изменить тип столбца на DATE. Если вы настаиваете на том, чтобы делать это через PHP, то это действительно то же самое:

$today = date('Y-m-d');
$query = mysql_query("
    SELECT field FROM table WHERE DATE(column) = '$today'
");
Если вы измените свой столбец на DATE, то можете удалить вызов функции DATE () вокруг столбца. Эта функция используется для извлечения DATE из столбца DATETIME для сравнения. Если вам когда-либо понадобится только ДАТА, вам, вероятно, следует изменить тип столбца.
Error: User Rate Limit Exceeded jingleboy99
Error: User Rate Limit Exceeded jingleboy99
Error: User Rate Limit Exceeded jingleboy99
Error: User Rate Limit Exceededdev.mysql.com/doc/refman/5.1/en/time-zone-support.htmlError: User Rate Limit Exceeded
1

Для даты это бесполезно, вместо этого я пытаюсь это и работает ...

Сегодняшние гости!

sql & gt;select user_id from users where last_visit like concat('%' , CURDATE() , '%');

// last_visit столбец типа & quot; datetime & apos;

Похожие вопросы