2013-04-30 2 views
-1

У меня есть код SQL, который я хочу сделать в критериях (Hibernate), но у меня проблемы с ним. Моя цель состоит в том, чтобы сделать этот код SQL в Критерии:Преобразование инструкции SQL в CRITERIA с UNION

SELECT * FROM 
      (
       SELECT 'B', D.* 
       FROM table_view1 D 

       UNION 

       SELECT 'S', D.* 
       FROM table_view1 D 
      ) 
WHERE dbkey = 1; 

Как это сделать?

+0

Не спрашивайте [ответы на вопросы] (http://stackoverflow.com/questions/16279384/hibernate-union-in-criteria). – eldarerathis

ответ

0

Вы должны будете использовать ALIAS для подзапроса, чтобы получить доступ столбец, принадлежащим к ней вне запроса ИНЕК

SELECT * FROM 
      (
       SELECT 'B', D.* 
       FROM table_view1 D 

       UNION 

       SELECT 'S', D.* 
       FROM table_view1 D 
      ) Z 
WHERE Z.dbkey = 1; 
+0

Пожалуйста, напишите мне код в CRITERIA, пожалуйста .. с 4 дней я пытаюсь это сделать bbut, я не могу – user1814879

1

У вас есть два варианта:

  • Использовать собственные SQL-запрос
  • перепишите свой запрос, чтобы он не использовал union, потому что API критериев не поддерживает UNION.
+0

Хорошо, я вижу .., но в моем проекте я не могу использовать собственный SQL-запрос. использовать критерии. Поэтому я не знаю, что я могу сделать .. если вы другое решение для моего запроса – user1814879

+0

просто любопытство, почему вы не можете использовать собственный sql? – user902383

+0

Потому что я работаю в проекте, где мы не можем использовать HQL, SQL Native и т. Д. Это просто стандарт для этого проекта (не используйте HQL, SQL используйте только CRITERIA) – user1814879

Смежные вопросы