Я использую hibernate 5.1.0 с диалектом MySQL5Dialect.
В моем коде есть точка, в которой в рамках построителя критериев я приводил выражение к десятичному числу. Но точность по умолчанию слишком низкая или продукт SQL не совместим с MySQL.
Вот результаты моего испытания
Первый два недопустимы для MySQL, а остальные снижают точность, поэтому запрос не выполняет запланированную фильтрацию. Мне нужно выполнить приведение с более высокой точностью, но я не могу этого сделать. Я также пытался использовать функцию, но вызов createQuery застревает.
builder.function("CAST", Double.class, valueExpression, builder.literal("decimal(30,30)"))
valueExpression имеет тип javax.Path