2015-04-03 2 views
0

У меня есть исключение в моем разделе where. У меня есть следующий HQL-запрос:HQL Query - вопрос в where, используя псевдоним

SELECT a.addressType as myowncolumn 
FROM Address a 
WHERE myowncolumn = 1 

я получил следующее сообщение об ошибке: Неизвестного столбца «myowncolumn» в том, где пункт

Если удалить ИНЕК запрос является действительным. Что не так?

Не могли бы вы помочь мне, пожалуйста.

+0

Просьба показать класс объекта адреса. –

+0

Этот класс имеет только postalCode и город и адресType .... это не огромный класс ... У меня нет колонки, как myowncolumn. В реальном мире я хотел бы вычислить что-то в предложении select. Но до этого я должен решить эту проблему для псевдонима ... В прочитайте также, что предложение WHERE является первым шагом в SQL-запросе, который будет проверяться. После этого предложение select. Но предложение where не может найти «myowncolumn» – internet

ответ

0

Это не работает даже в обычном SQL, и вы правы в своем комментарии, что SQL проверяется с внутренней стороны/справа налево. Вот почему myowncolumn не распознается.

+0

, чем я получил «не удалось разрешить свойство: myown column of Address» – internet

+0

Этот вопрос в порядке, отлично работает для меня в Hibernate 4. Можете ли вы опубликовать полный код, как вы звоните Это? –

+0

После вашего редактирования мой ответ больше не стоял. Я отредактировал его полностью. –

0

Ваша сущность «должна знать» (иметь ссылки по полям) о myowncolumn. Например, если Адрес имеет ссылку на Город и их страну, то этот запрос hql будет верным:

select adr from Address a where a.city.country.name='UK'; 
Смежные вопросы