Собственный запрос репозитория JPA игнорирует :: timestamptz - PullRequest
0 голосов
/ 04 мая 2020

У меня есть следующий собственный запрос.

Смещение работает при работе в собственной консоли SQL. Тем не менее, когда я запускаю код в Java, он, кажется, игнорирует аргумент «timestamptz at time zone 'Asia / Seoul'» и возвращает результат UT C.

Есть ли что-то, что мне нужно установить сделать эту работу? (Моя база данных хранит метку времени в UT C)

@Query(
      value =
          "SELECT EXTRACT(HOUR FROM STO.createddate\\:\\:timestamptz at time zone 'Asia/Seoul') AS hour,\n"
              + "        COUNT(STO.id) AS count, SUM(STO.grandtotalprice) AS sum, AVG(STO.grandtotalprice) AS average\n"
              + "FROM store.storeorder AS STO\n"
              + "WHERE STO.store_id=?1 AND STO.createddate >= ?2 AND STO.createddate < ?3 AND STO.orderstatus IN ('CLOSED')\n"
              + "GROUP BY EXTRACT(HOUR FROM STO.createddate\\:\\:timestamptz at time zone 'Asia/Seoul') \n"
              + "ORDER BY hour ASC;",
      nativeQuery = true)
  List<ReportHourly> hourlyReport(
      UUID storeId, LocalDateTime from, LocalDateTime to);

1 Ответ

0 голосов
/ 04 мая 2020

Я понял, что происходит.

Мой Hibernate настроен на запуск в часовом поясе Азии / Сеула. Так что это не имело никакого эффекта.

Я изменил свой часовой пояс на UT C, и теперь он работает.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...