[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: сума записей за определенное время
WhiteKnight
Как узнать количество записей добавленых в БД сегодня, вчера.
Был в гугле, не нашел ответа на мой вопрос, а очень нужно.



Спустя 54 минуты, 52 секунды (8.01.2010 - 02:19) sergeiss написал(а):
Заведи поле, где фиксируется дата и время ввода записи - и будет тебе счастье....

Спустя 13 минут, 36 секунд (8.01.2010 - 02:32) WhiteKnight написал(а):
sergeiss, есть оно data и time и как им в моем случае воспользоваться ?
я в них записываю время и дату добавления записи в БД.
А как на вывод от одного до другого сделать ?

Спустя 17 минут, 57 секунд (8.01.2010 - 02:50) Lex_R написал(а):
Цитата (WhiteKnight @ 7.01.2010 - 22:24)
Как узнать количество записей добавленых в БД сегодня, вчера.
Был в гугле, не нашел ответа на мой вопрос, а очень нужно.

Делай запрос на выборку количества записей с определенной датой.

Спустя 29 минут, 58 секунд (8.01.2010 - 03:20) WhiteKnight написал(а):
в том то и дело что я не представляю как сделать запрос на выборку от даты до даты тем боле что каждый день то разные даты и как менять вид запроса ?

Спустя 28 минут, 44 секунды (8.01.2010 - 03:49) sergeiss написал(а):
На Постгре запрос будет примерно такой, универсальный для любой даты (в данном случае для выборки за 2 дня, включая текущий день):

select .... 
from ....
where now() - record_date <= interval '2 day'


В MySQL похоже, но не полностью также.

Спустя 9 часов, 22 минуты, 14 секунд (8.01.2010 - 13:11) WhiteKnight написал(а):
В общем нашел

и сделал вот такую функцию

function per_day() {
$query = "SELECT * FROM `table` WHERE record_date >= SYSDATE() - INTERVAL 1 DAY";
$result = mysql_query($query);
$elements = mysql_num_rows($result);
return $elements;
}


хочу посчтитать

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in

на вот эту строчку ругается, та которая считает
$elements = mysql_num_rows($result);

Спустя 9 минут, 44 секунды (8.01.2010 - 13:21) VolCh написал(а):
WhiteKnight mysql_query вернула FALSE, что-то с запросом не то или коннекта нет. А вообще используй COUNT(*), если нужно только количество

Спустя 2 минуты (8.01.2010 - 13:23) WhiteKnight написал(а):
VolCh, а может по тому что сегодня ни одной записи новый не было ? тогда это будет всегда такая ошибка

Проверил, добавил нет не в это проблема..

Спустя 3 минуты, 48 секунд (8.01.2010 - 13:27) VolCh написал(а):
Вряд ли, тогда пустой набор возвращается по идее, а num_rows возвращает 0. Посмотри, что в mysql_error

Спустя 9 минут, 7 секунд (8.01.2010 - 13:36) WhiteKnight написал(а):
вроде есть теперь.
$query = "SELECT * FROM `table` WHERE `table`.`date` > DATE_SUB(CURDATE(), INTERVAL 1 DAY)";

обращаюсь к date которое у меня было заведено

Спустя 8 минут, 14 секунд (8.01.2010 - 13:44) sergeiss написал(а):
WhiteKnight - обрати внимание на данный ранее совет про COUNT(*)... Это быстрее будет работать.

Спустя 13 минут, 4 секунды (8.01.2010 - 13:57) WhiteKnight написал(а):
sergeiss я не понял по поводу count(*) это что вместо SELECT * FROM написать что ли ?

Спустя 2 минуты, 46 секунд (8.01.2010 - 14:00) VolCh написал(а):
Вместо * напиши COUNT(*), а результат получай не через num_rows, а через fetch_row

Спустя 22 минуты, 41 секунда (8.01.2010 - 14:23) WhiteKnight написал(а):
получил я массив

$query = "SELECT COUNT(*) FROM `table`";
$result = mysql_query($query);
$elements = mysql_fetch_row($result);
return $elements;

в результате

могу предположить что в нем все столбцы(мне теперь в цикле while считать?), а какой это даст толк ?

Спустя 1 минута, 6 секунд (8.01.2010 - 14:24) VolCh написал(а):
Нет smile.gif Просто $elements[0] содержит количество строк
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.