Я использую Jooq.У меня есть поле в базе данных, которая содержит длинные строки.Я хочу применить строковые функции к возвращаемым значениям из оператора select, чтобы значения возвращались в помеченном столбце.Вот пример:
select STAT_NAME, STAT_COUNT, AVERAGE, HALF_WIDTH, SIM_RUN_ID_FK
FROM ACROSS_REP_STAT
where STAT_NAME like '%:Queue%'
ORDER BY STAT_NAME, SIM_RUN_ID_FK;
В приведенном выше запросе STAT_NAME является действительно длинной строкой.Предположим, я хочу извлечь подстроку возвращаемой строки в виде столбца:
select SUBSTRING(STAT_NAME, 1, 4) AS Something, STAT_NAME, STAT_COUNT,
AVERAGE, HALF_WIDTH, SIM_RUN_ID_FK
FROM ACROSS_REP_STAT
where STAT_NAME like '%:Queue%'
ORDER BY STAT_NAME, SIM_RUN_ID_FK;
Как мне построить оператор jooq для чего-то подобного?
Предположим, что я хотел использовать позицию() функция из DSL для создания индекса, например, 4 в переменной функции substring ().Функция position () возвращает поле.У меня возникают проблемы при получении что-то вроде этого:
substring(STAT_NAME, 1, position(STAT_NAME, ":"))
для работы, потому что substring () ожидает int, а не поле
Теперь я вижу, что я вызываю substring () сint и Field и что для этого нет сигнатуры метода, но она есть для
substring (Поле Field, Поле startPosition, Длина поля)
Как повернуть, начиная с 1в поле?