Когда в противном случае jpa запрос в предикате - PullRequest
0 голосов
/ 27 мая 2019

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

Если данные в столбце имеют какое-либо значение, мне нужно взять все строки, где другой столбец имеет значение true, в противном случае мне нужно взять все строки, где третий столбец имеет значение true .
По моему мнению, в запросе на критику этот запрос:

cb.selectCase ()
   .when ( root.get ( TableA.id ).in ( subRootB.get ( TableB.idA)),
       cb.equal ( subRootB.get ( TableB.visibile ), TRUE ) )
   .otherwise (
      cb.equal ( subRootC.get ( TableC.visibile ), TRUE ))

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

Есть кто-то, кто может мне помочь?

...