Mysql: получить количество записей между двумя датами
У меня проблема с MySQL. Я хочу получить количество записей между двумя записями даты и времени.
Например:
У меня есть столбец в моей таблице с именем "created" с типом данных datetime
.
Я хочу подсчитать записи, которые были созданы с датой между "СЕГОДНЯ 4:30 AM" и "ТЕКУЩЕЕ ВРЕМЯ ДАТЫ".
Я пробовал некоторые из функций MySQL, но мне все равно не повезло.
Не могли бы вы мне помочь?
спасибо.
Ответы
Ответ 1
Может быть:
SELECT count(*) FROM `table`
where
created_at>='2011-03-17 06:42:10' and created_at<='2011-03-17 07:42:50';
или используйте between
:
SELECT count(*) FROM `table`
where
created_at between '2011-03-17 06:42:10' and '2011-03-17 07:42:50';
Вы можете изменить дату и время в соответствии с вашими потребностями. Для получения желаемых дат можно использовать curdate()
или now()
.
Ответ 2
select * from yourtable where created < now() and created > '2011-04-25 04:00:00'
Ответ 3
select * from yourtable
where created < now()
and created > concat(curdate(),' 4:30:00 AM')
Ответ 4
самый быстрый из них -
WHERE date(created_at) ='2019-10-21'
Ответ 5
$stmt = $DB_con->prepare("SELECT* FROM tbl_tt WHERE (source='$from' AND
destination='$to') AND (departuret>='$start' AND departuret<='$reach')
GROUP BY tn,source,destination,departuret,reacht ORDER BY departuret");
$stmt->execute();
$row=$stmt->fetch(PDO::FETCH_ASSOC);