Пользовательский запрос SQL для вставки результатов SELECT в таблицу в Spring Boot JPA Hibernate - PullRequest
0 голосов
/ 21 сентября 2018

У меня есть проект весенней загрузки с использованием JPA hibernate.

Я пытаюсь создать собственный запрос, который вставляет результаты select в таблицу.Как бы я это сделал?

Это мой SQL-запрос:

INSERT INTO aggregateTable

  (
    SELECT
      avgSalesA,
      avgSalesB,
      salesMade,
      tableA.employeeid
    FROM

      (
        SELECT
          avg(sales) as avgSalesA,
          count(salesMadeDaily) as SalesMadeTotal,
          employeeid
        FROM companyA
        GROUP BY employeeid
      ) tableA

    INNER JOIN

    (
      SELECT
        avg(sales) as avgSalesB,
        employeeid
      FROM companyB
      GROUP BY employeeid
    ) tableB

    ON tableA.employeeid = tableB.employeeid
  )

1 Ответ

0 голосов
/ 21 сентября 2018

Вы можете просто использовать JPA:

entityManager.executeUpdate("INSERT INTO aggregateTable (Select avgSalesA, avgSalesB, 
                             salesMade, tableA.employeeid FROM 
                             (SELECT avg(sales) as avgSalesA, count(salesMadeDaily) as 
                             SalesMadeTotal, employeeid FROM companyA GROUP BY 
                             employeeid) tableA INNER JOIN (SELECT 
                             avg(sales) as avgSalesB, employeeid FROM companyB group 
                             by employeeid) 
                             tableB ON tableA.employeeid = tableB.employeeid)");

Или, если вы используете репозитории Spring Data

@Modifying
@Query("<your insert query", nativeQuery=true)
public int insert();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...