0

NHiberanteでは、私はこの声明を持っています

 (from p in Session.Query<MyObject>() select p).Count(); 

これはこれと等しいですか?

select count(*) from MyObject

オブジェクト名がテーブル名と同じであると仮定します。

テーブル データが巨大な場合、パフォーマンスを向上させる方法はありますか?

ありがとう

4

1 に答える 1

1

あなたはより良い使用ができます:

(from p in Session.Query<MyObject>() select p).LongCount();

SQLite クエリは次のとおりです。

select cast(count(*) as BIGINT) as col_0_0_ from MyObject myobject0_

以下を使用して、DBMS 固有の最適化されたクエリを作成できます。

Session.CreateSQLQuery("sql query");

カウントの最適化に関する質問:

mysql カウント クエリを最適化する

于 2012-05-03T19:04:59.143 に答える