Код: Выделить всё
SELECT DISTINCT d.comic_book_id as comic_book_id,
d.comic_detail_id as comic_detail_id,
d.archive_type as archive_type,
d.comic_state as comic_state,
CASE
WHEN EXISTS(SELECT *
FROM comic_metadata_sources s
WHERE s.comic_book_id = d.comic_book_id)
THEN false
ELSE true END AS is_unscraped,
d.comic_type as comic_type,
d.publisher as publisher,
d.series as series,
d.volume as volume,
d.issue_number as issue_number,
d.description as description,
d.notes as notes,
(SELECT RIGHT(CONCAT('0000000000', d.issue_number), 10)) as sortable_issue_number, d.title as title, (
SELECT COUNT(*)
FROM comic_pages cp
WHERE cp.comic_book_id = d.comic_book_id) as page_count
, d.cover_date as cover_date
, CASE WHEN d.cover_date IS NULL THEN 0 ELSE MONTH (cover_date)
END
as month_published
, CASE WHEN d.cover_date IS NULL THEN 0 ELSE YEAR (cover_date)
END
as year_published,
d.store_date as store_date,
d.added_date as added_date
FROM comic_details d
< /code>
В V2 нашего проекта эта точка зрения создала и работала просто отлично. Таким образом, я скопировал содержимое представления из нашей кодовой базы V2 в миграцию для V3. < /P>
Когда я запускаю миграцию во всех других поддерживаемых базах данных (H2, MySQL, Mariadb) IT, и все связанные операции отлично работают. Class = "Lang-None PrettyPrint-Override">Caused by: org.postgresql.util.PSQLException: ERROR: function month(date) does not exist
Hint: No function matches the given name and argument types. You might need to add explicit type casts.
Код: Выделить всё
THEN SELECT EXTRACT(MONTH FROM cover_date)
< /code>
и: < /p>
THEN SELECT EXTRACT(YEAR FROM cover_date)
Другое различие между нашим кодом V2 и V3 заключается в том, что v3 состоит в том, что мы перешли от Spring Boot 3.2.3.3.1 .1. Я не уверен, изменилась ли версия Liquibase между ними, но может ли быть какая -то ошибка в более новой версии LB? Я предполагаю, что Spring увеличила его к более новой версии.
Подробнее здесь: https://stackoverflow.com/questions/795 ... -liquibase