2010-09-27 100 views
0

从采样器中选择alphanum,其中alphanum不在(从采样器中选择sampler.alphanum,samplerassignment其中sampler.alphanum = samplerassignment.alphanum和isactive = 1);使用NHibernate查询来在JOIN语句中查询NOT IN

我有这个声明,并希望使用NHibernate查询来执行它。我在NHibernate中编写它怎么样?

回答

1

尝试:

string hql = @"select s1.alphanum from sampler s1 where 
       s1.alphanum not in 
       (select s2.alphanum from sampler s2, samplerassignment sa where s2.alphanum = sa.alphanum and sa.isactive = 1)"; 

var result = session.CreateQuery(hql).List(); 

其中session是你的NHibernate的ISession的。