• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Помогите с выборкой

  • Автор темы Автор темы slavon-x86
  • Дата начала Дата начала
S

slavon-x86

Есть таблица:
Код:
ip (INT) | add_date (DATETIME)

Необходимо узнать количество записей для каждого часа за последние 36 часов.
Делать 36 запросов как-то не серьёзно, а как сделать одним запросом незнаю.
 
а вот так:
SELECT * FROM `tabname` WHERE add_date<Текущая дата and add_date>Текущая дата-36 часов
По-мойму WHERE на операторах сравнения тож работаить...
 
Надо узнать не количество записей за 36 последних часов, а для каждого из 36 последних часов.
отдельно для 1
отдельно для 2
...
отдельно для 36
 
Варианта 2:
1. Сделать 36 запросов к базе (в цикле for или while)
2. Сделать 1 запрос и разобрать общий результ на 36 кусков (мне больше нравится)
 
Вот я и грю. Ваяешь запрос, который получает ВСЕ записи за посл. 36 часов. Я его уже писал.
Далее валишь циклом, чтобы разобрать полученные данные по часам. Вот и все.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab