2014-11-06 38 views
0

我有我试图在Grails的SQL查询,目前不支持返回别名

final session = sessionFactory.currentSession; 
final String query = 'select count(A.*) from Artifact as A LEFT JOIN classification as C on (A.id=C.artifact_id) where C.id IS NULL OR C.active=0'; 
final sqlQuery = session.createSQLQuery(query); 

def totalunclass = sqlQuery.with { 
         addEntity(Artifact);           
           } 

运行,但我得到的错误Message: SQL queries do not currently support returning aliases 我尝试另一种方法这种原始SQL,但未能有太大达到的效果点击here

回答

0

试着改变你的查询行,看起来像这样

final String query = 'select count(*) from Artifact A LEFT JOIN classification C on (A.id=C.artifact_id) where C.id IS NULL OR C.active=0'; 
+0

Nah我得到了同样的错误。:( – krs8785 2014-11-06 20:38:29

0

试试这个,去除人iases:

final session = sessionFactory.currentSession; 
final String query = 'select count(Artifact.*) from Artifact LEFT JOIN classification on (Artifact.id=classification.artifact_id) where classification.id IS NULL OR classification.active=0'; 
final sqlQuery = session.createSQLQuery(query); 

def totalunclass = sqlQuery.with { 
        addEntity(Artifact);           
          }