1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/best_handsome-mybatis-plus-join

 / Детали:

[Функциональное улучшение]: Как использовать JOIN для реализации связей с подзапросами при работе с...

Предстоит сделать
Владелец
Создано  
21.04.2025

подзапросами

Подтверждение

  • Моя версия является самой последней, номер версии соответствует версии, и в проекте отсутствуют конфликты зависимостей
  • Я уже поискал в issues и подтвердил, что данная проблема не была предложена ранее
  • Я изменил заголовок, заменив описание на описание проблемы, с которой столкнулся

Улучшение функциональности

Одним из распространенных сценариев является использование агрегирующих функций для статистики данных, когда требуется агрегировать данные по различным измерениям, объединяя результаты в одном запросе. Поскольку агрегирующие функции возвращают одно значение, в join не требуется использовать ключевое слово ON для указания связанных полей. Попытки использовать подзапросы и лямбда-выражения для объединения не привели к успеху, и в конечном итоге требуется реализовать SQL запрос, подобный следующим примерам:

SELECT
  thisYear.totalProfit AS currentYearProfit,
  lastYear.totalProfit AS lastYearProfit 
FROM
  ( SELECT COUNT( id ) AS totalProfit FROM company_report WHERE report_period = '2024-01-01 00:00:00' ) AS thisYear
  JOIN ( SELECT COUNT( id ) AS totalProfit FROM company_report WHERE report_period = '2025-01-01 00:00:00' ) AS lastYear;

или

SELECT
  * 
FROM
  ( SELECT COUNT( id ) AS currentYearProfit FROM company_report WHERE report_period = '2024-01-01 00:00:00' ) AS thisYear
  JOIN ( SELECT COUNT( id ) AS lastYearProfit FROM company_report WHERE report_period = '2025-01-01 00:00:00' ) AS lastYear;
```Таким образом, результаты запроса можно легко отображать в объекте с полями `currentYearProfit` и `lastYearProfit`.

Можно ли реализовать это?

### Ссылки на материалы

Комментарий (0)

GitLife Service Account Задача создана

Вход Перед тем как оставить комментарий

Статус
Ответственный
Контрольная точка
Pull Requests
Связанные запросы на слияние могут быть закрыты после их объединения
Ветки
Дата начала   -   Крайний срок
-
Закрепить/Открепить
Приоритет
Участники(1)
1
https://api.gitlife.ru/oschina-mirror/best_handsome-mybatis-plus-join.git
git@api.gitlife.ru:oschina-mirror/best_handsome-mybatis-plus-join.git
oschina-mirror
best_handsome-mybatis-plus-join
best_handsome-mybatis-plus-join