Nhibernate: ограничение суммой в 2 столбца

Могу ли я создать этот sql-запрос, используя критерии HNibernate:

Выберите * из таблицы1, где столбец1> (столбец2 + столбец3)

Все 3 столбца - int32. Спасибо


person Lullaby    schedule 22.11.2010    source источник


Ответы (2)


Итак, прочитав в n-й раз вопрос именно с этой проблемой, я решил написать реализацию, которая не включает запись SQL.

Вы можете проверить реализацию на http://savale.blogspot.com/2011/04/nhibernate-and-missing.html, с помощью которого можно написать:

criteria.Add(
   Restrictions
     .GeProperty("Prop1",
                 new ArithmeticOperatorProjection("+",
                                 NHibernateUtil.Int32,
                                 Projections.Property("Prop2"), Projections.Property("Prop3")
                                                  )
                )
);
person Jaguar    schedule 28.04.2011

Вы можете использовать Expression и написать немного SQL, это то, что мне подходит.

criteria.Add(Expression.Sql("Column1 > (Column2 + Column3)"));
person shanabus    schedule 08.12.2010