Форум программистов, компьютерный форум, киберфорум
Java: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
2 / 1 / 1
Регистрация: 27.07.2018
Сообщений: 21

criteriaBuilder.max(criteriaBuilder.sele­ctCase()

24.02.2023, 17:55. Показов 1269. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.
В скл имеется такая конструкция:
SQL
1
2
3
4
SELECT qwe.field1, MAX(CASE WHEN STATUS = 'created' OR STATUS = 'sign' THEN STATUS ELSE NULL END) AS STATUS
FROM TABLE
LEFT JOIN statusTable ON statusTable.qwe_id = qwe.id
GROUP byqwe.field1.
Так вот в скл все работает, на выходе 2 столбца с field1 и столбец status, который выводит только, если есть статус created(их может быть несколько), если created нет, то null.
Теперь пытаюсь написать критерию.
Java
1
criteriaBuilder.multiselect(root.get("field1"), criteriaBuilder.max(criteriaBuilder.selectCase().when(root2.get('status').in('created', 'sign'), root2.get('status')).otherwise(null)));
на что получаю ошибку reason no instance(s) of type variable(s) exist so that object conforms to Number.
То бишь criteriaBuilder.max принимает только тип Number. Но если я привожу к типу number,то в sql добавляется cast и соответственно падает, так как строка status(created), не может быть преобразован в (int, long и тд)
Самое интересное, что просто criteriaBuilder.max(root2.get('status')) работает(берет по алфавиту), но именно с case нет, но без case выводится не тот результат.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.02.2023, 17:55
Ответы с готовыми решениями:

CriteriaBuilder. Смещение времени суток
Добрый день! В базе хранятся записи на каждый час. Необходимо выбрать записи за период и вывести, сколько часов каждый день было...

Даны действительные числа a, b. Найти: u = max (a, b), v = max (ab, a + b), с = max (u5 + v5, 256).
Даны действительные числа a, b. Найти: u = max (a, b), v = max (ab, a + b), с = max (u5 + v5, 256). предварительные данные задавать...

Написать программу min(A1, B1) + max(A2, B2) + min(A3, B3) + max(A1, A3)
Написать программу для вычисления выражения: min(A1, B1) + max(A2, B2) + min(A3, B3) + max(A1, A3). Числа A1, A2, A3, B1, B2, B3...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.02.2023, 17:55
Помогаю со студенческими работами здесь

CriteriaBuilder и CriteriaQuery основные понятия: Не доходит!
Здравствуйте! Перелистала кучу документации по данному вопросу, но все равно не доходит НУ НИКАК! Вообще, имеется таблица, столбцы которой...

Даны векторы a и b , состоящие из семи компонентов. Найти max(max(Ai), max(Bi), max(¦Ai-Bi¦), max(Ai+Bі),1)
Даны векторы a и b , состоящие из семи компонентов. Найти max(max(Ai), max(Bi), max(¦Ai-Bi¦), max(Ai+Bі),1).

9. Найти максимальный элемент в массиве a1.an, используя соотношение (метод деления пополам) max (a1.an)=max (max (a1.an/2), max (an/2+1, an)
Помогите пожалуйста решить задачу.

Вычислить произведение Max(A) Max(B), где Max(A) (Max(B)) - максимальный элемент в одномерной матрице
Напишите процедуру на языке VBA для вычисления произведения Max(A) Max(B) , где Max(A) (Max(B)) максимальный элемент в одномерной ...

Задать значения вещественным элементам массивов A(6),B(3),C(10) и вычислить Y=max(max(A),max(B),max(C)
Задать значения вещественным элементам массивов A(6),B(3),C(10) и вычислить Y=max(max(A),max(B),max(C))


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru