Сравнить с прошлым годом / месяц / неделя / день

У меня есть текущая настройка, в которой я суммирую все свои проекты из базы данных с моим запросом, который выглядит так:

$query01 = "
  SELECT COUNT(project_id) as total_week
  FROM projects
  WHERE WEEK(CURDATE(), 1) between WEEK(project_start, 1) and WEEK(project_delivery, 1)
";

И равный запрос для каждого года / месяца / дня.

Я также хотел бы вывести сравнение со стрелкой вверх / вниз с прошлым годом / месяцем / неделей / днем ​​для каждого.

Как я мог добиться чего-то подобного? Заранее спасибо!

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
54
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
$thisweek = query("SELECT COUNT(project_id) as total_week
    FROM projects
    WHERE WEEK(CURDATE(), 1) between WEEK(project_start, 1) and WEEK(project_delivery, 1)");

$lastweek = query("SELECT COUNT(project_id) as total_last_week
    FROM projects
    WHERE WEEK(DATE_SUB(CURDATE(), INTERVAL 1 WEEK), 1) between WEEK(project_start, 1) and WEEK(project_delivery, 1)");

$comparison = $thisweek - $lastweek;

Что-то в этом роде должно сработать. Предполагается, что использованная мною функция «запрос» вычитает только один счетчик в этом сценарии.

Другие вопросы по теме