Sql Case выражение в обновлении критериев JPA - PullRequest
0 голосов
/ 17 мая 2018

У меня есть именованный запрос:

"UPDATE student SET student.marks = " +
"    CASE WHEN student.name in :" + nameListOne + 
"         THEN 10 ELSE marks " + 
"     END  , student.class = 6 WHERE student.name in :" +  namelistOneAndTwo

как я могу добиться этого с помощью обновления критериев. Это всего лишь пример, который я хочу понять, как выражение регистра может использоваться в обновлении критериев.

1 Ответ

0 голосов
/ 17 мая 2018

Может быть проще просто иметь два обновления.Не уверен, что такое «nameListOne», я предполагаю, что это некоторый параметр в строке динамического SQL-запроса.

UPDATE student 
   SET marks = 10
 WHERE name IN nameListOne;

UPDATE student
   SET class = 6
 WHERE name IN nameListOneAndTwo;

Есть некоторая ценность в том, чтобы все было простым и интуитивно понятным.

...