JPA条件中的Sql Case表达式更新

时间:2018-05-17 15:35:22

标签: sql jpa case criteria-api

我有一个命名查询:

"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 :(得分:-1)

可能更容易获得两次更新。不确定" nameListOne"是的,我假设这是动态SQL查询字符串中的一些参数。

UPDATE student 
   SET marks = 10
 WHERE name IN nameListOne;

UPDATE student
   SET class = 6
 WHERE name IN nameListOneAndTwo;

保持简单直观的一些价值。