You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by fa...@apache.org on 2008/08/08 08:46:30 UTC
svn commit: r683876 - in /openjpa/trunk:
openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java
openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java
Author: fancy
Date: Thu Aug 7 23:46:29 2008
New Revision: 683876
URL: http://svn.apache.org/viewvc?rev=683876&view=rev
Log:
OPENJPA-681 Subquery generates SQL with syntax error
Modified:
openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java
openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java
Modified: openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java?rev=683876&r1=683875&r2=683876&view=diff
==============================================================================
--- openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java (original)
+++ openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java Thu Aug 7 23:46:29 2008
@@ -618,8 +618,10 @@
// if alias is defined and referenced, return true.
String value = "t" + alias.toString() + ".";
if (_tableAliases != null)
- return _tableAliases.containsValue(value) &&
- _tables.containsKey(alias);
+ if (_tableAliases.containsValue(value))
+ return _tables.containsKey(alias);
+ else
+ return _joins != null;
else
return true;
}
Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java?rev=683876&r1=683875&r2=683876&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java Thu Aug 7 23:46:29 2008
@@ -66,6 +66,8 @@
" and (select min(o2.amount) from Customer c, in(c.orders) o2)",
"select o.oid from Customer c, in(c.orders)o where o.amount >" +
" (select sum(o2.amount) from c.orders o2)",
+ "select o1.oid, c.name from Order o1, Customer c where o1.amount = " +
+ " any(select o2.amount from in(c.orders) o2)",
// outstanding problem subqueries:
//"select o from Order o where o.amount > (select count(o) from Order o)",
//"select o from Order o where o.amount > (select count(o2) from Order o2)",