2014-11-29 3 views
-3

Я хочу получить количество записей за предыдущий день из базы данных.Получить дату предыдущего дня в формате MySQL

Я использую следующий метод

$date = date('Y-m-d H:i:s', strtotime('-1 day')); 
$users = 'SELECT Count(*) FROM users where date="'.$date.'"'; 

Это шоу отсчет 0 в формате даты в базе данных (Y-м-д Н: я: сек).

Спасибо.

+0

Downvoted с сожалением, отчасти из-за запроса срочность от добровольцев, а также потому, что вы получили три ответа в тот же день и не голосовали, не принимали и не комментировали. – halfer

ответ

2

Может просто сделать

select count(*) from users where to_days(date) = (to_days(now()) - 1); 

Это полезно, если ваш столбец даты является датами и время - мы просто преобразованным в число дней и проверить, сколько записи есть день дня число.

1

Надеется, что это поможет вам

SELECT COUNT(*) FROM users WHERE date = (CURDATE() - INTERVAL 1 DAY) 
1

Вы могли бы хотеть рассмотреть вопрос об обращении MySql себя об этом, так что PHP не нужно вычислить его (и это, вероятно, будет быстрее):

SELECT Count(*) FROM users WHERE date = DATE_SUB(NOW(), INTERVAL 1 DAY)

Смежные вопросы