Java JDO查询中的多类

Java JDO查询中的多类,java,google-app-engine,jdo,Java,Google App Engine,Jdo,我目前正在GAE中开发,我必须使用JDO进行如下查询: 选择表1.column1、表2.column2 从表1到表2,其中 表1.column1=表2.column1 我试过这个,但不起作用: String query = "select from "+Assessment.class.getName()+ "a, "+ Project.class.getName()+" p where a.projectId == p.id &

我目前正在GAE中开发,我必须使用JDO进行如下查询:

选择表1.column1、表2.column2 从表1到表2,其中 表1.column1=表2.column1

我试过这个,但不起作用:

    String query = "select from "+Assessment.class.getName()+ "a, "+ 
                        Project.class.getName()+" p where a.projectId == p.id && p.owner=='"+owner+"'";
这是有效的还是真的不受支持? 如果这是有效的,那么为什么它不起作用呢? 如果不是,我该怎么做才能让它工作


谢谢大家!

也许你应该熟悉一下。您不能有多个“候选”类型。显然,一个简单的JDOQL查询不能返回超过1个候选类型,因为它没有意义。您希望类型评估的对象返回,因此这就是候选对象。如果评估和项目相关,则使用where子句中的关系字段,如果不相关,则使用变量(也在文档中)

如果只想返回一个类为1的字段和一个类为2的字段,那么在result子句中指定它。 从mydomain.Assessment中选择this.field1、this.project.field2,其中this.project.owner=“value”