2009-07-22 32 views
1

Select句で式を使用する方法はありますか?NHibernate HQLクエリ:Select句の式

例:ユーザーから

選択u.Age/2 U

私は今、この例外抱えている:

NHibernate.QueryException: '' の前にSELECTで期待を:/ [Business.Entities.User uからu.Age/2を選択]

答えて

0

はい、できます。クエリの結果はオブジェクトのリスト[]になります。配列の各要素は列計算の結果です。あなたの例では、テーブルに10行がある場合は、age/2値を含む単一アイテムのObject []を持つ10個のアイテムのリストが返されます。

私はこの動作を説明するHibernateドキュメントの部分にリンクします(特別な名前がありますが、それは何かを覚えていません)が、hibernate.orgは再びダウンしているようです。

+0

うーん..私はこの単純なクエリを実行することはできないんだけど、実際に私はNHibernateはを使用しています、多分これが問題でしょうか? 私はこの例外を持つ: NHibernate.QueryException: '' の前にSELECTで予想:/ [ Business.Entities.User Uから u.Age/2 を選択] –

+0

ああも...休止= NHibernateは! ..... – skaffman

2

u.Ageの結果を2で割ったものを取得したいだけですか? HQLを使うことができますが、マッピングファイルの式属性を変更する方が簡単です。

すなわち:

<property name="HalfAge" formula="Age/2" /> 
+0

答えをありがとう、これは単なる例でしたが、私はそれを念頭に置いておきます –

+0

これを答えとして受け入れるように気をつけますか? :] –