У меня был напряженный день, поэтому я не мог понять ответ сам.
Итак, извиняюсь, если ответ сидит прямо передо мной.
В основном я пытаюсь сформировать страницу запроса данных, отсортированных по дате в следующей структуре:
Что мне тяжело, так это определить, как это сделать.
query = SELECT * FROM table ORDER BY date ASC; {
echo Month
query = SELECT * FROM table WHERE month = Month ORDER BY date ASC; {
}
}
Является ли описанная выше структура наиболее эффективной для возврата желаемых результатов на предоставленном изображении?
Я открыт для любых предложений.
Не усложняйся. Все так просто.
Чтобы сгруппировать результат по месяцам:
GROUP BY MONTH(`date`)
Чтобы сгруппировать результат по дате:
GROUP BY DATE(`date`)
-где date
имя столбца даты.
Просто поместите его правильно в петли, чтобы решить вашу проблему.
как только вы получите все записи по дате, используя:
query = SELECT * FROM table ORDER BY date ASC;
Вы можете отображать название первой записи месяца и отображать запись до тех пор, пока месяц не изменится, при изменении месяца снова отобразится название месяца.
Это должно работать до тех пор, пока записи отсортированы, и вам не понадобится второй запрос (что, в свою очередь, повысит производительность)