Если вы не используете бизнес-объект для этого каким-либо другим способом, я думаю, что в этой ситуации я бы обошел NHibernate. То есть: не используйте HQL, но выдайте собственный SQL-запрос. (NHibernate позволяет вам сделать это; проверьте CreateSQLQuery ISession).
Зачем мне это делать?
Потому что, когда вы выполняете такой запрос с использованием HQL, я думаю, что NH выберет каждую сущность из базы данных, изменит ее свойство, а затем обновит соответствующую строку. Представьте себе хит производительности.
Но я думаю, что HQL не поддерживает запросы UPDATE (но я могу ошибиться в этом).