选择排名前1的nhibernate oracle

选择排名前1的nhibernate oracle,oracle,nhibernate,Oracle,Nhibernate,我使用与oracle连接的nhibernate 我的语法有什么问题: string requeteString = @"select distinct reponse1 from (select reponse2 from CAMPAGNE reponse2 where reponse2.TEl = :tel and reponse2.EXECUTE.ID = :IdExecute order by reponse2

我使用与oracle连接的nhibernate

我的语法有什么问题:

 string requeteString = @"select distinct reponse1 from 
                                     (select reponse2 from CAMPAGNE reponse2 where reponse2.TEl = :tel  and reponse2.EXECUTE.ID = :IdExecute order by reponse2.ReponseLEVEL desc) reponse1
                                      where rownum = 1";

 IQuery requete = this.CreateQuery(requeteString);
我得到一个错误: 已捕获NHibernate.Hql.Ast.ANTLR.QuerySyntaxException HResult=-2146232832 Message=Une异常de type'Antlr.Runtime.noviablealException'aétélevée。第2行第37列附近
Source=NHibernate

CreateQuery用于HQL,而不是SQL。您需要改为使用CreateSQLQuery。

您的外部查询在子查询中引用的字段名称与您的字段名称不同从选择响应中选择不同的响应1感谢您的响应,您是否可以更具体一些请从选择响应中选择不同的响应2他们不匹配但我使用HQL,正如您在我的查询中看到的,那么HQL中的rownum是什么?rownum是一个Oracle概念。