Execute subqueries using clauses, selected items, and attribute test values.
SELECT a.id FROM (SELECT b.id FROM AllType b) AS a WHERE a.id = 1Use this Java code:
Query query1 = new Query();
query1.select("b.id");
query1.from("AllType", "b");
Query query2 = new Query();
query2.select("a.id");
query2.from(query1, "a");
AttributeTest ts = new AttributeTest();
ts.setAttribute("a.id");
ts.setValue(1);
query2.where(ts);
com.sybase.persistence.QueryResultSet qs = SUP101DB.executeQuery(query2);
SELECT (SELECT count(1) FROM AllType c WHERE c.id >= d.id) AS cn, id FROM AllType dUse this Java code:
Query selQuery = new Query();
selQuery.select("count(1)");
selQuery.from("AllType", "c");
AttributeTest ttt = new AttributeTest();
ttt.setAttribute("c.id");
ttt.setOperator(AttributeTest.GREATER_EQUAL);
Column cl = new Column();
cl.setAlias("d");
cl.setAttribute("id");
ttt.setValue(cl);
selQuery.where(ttt);
com.sybase.collections.GenericList<com.sybase.persistence.SelectItem> selectItems = new com.sybase.collections.GenericList<com.sybase.persistence.SelectItem>();
SelectItem item = new SelectItem();
item.setQuery(selQuery);
item.setAlias("cn");
selectItems.add(item);
item = new SelectItem();
item.setAttribute("id");
item.setAlias("d");
selectItems.add(item);
Query subQuery2 = new Query();
subQuery2.setSelectItems(selectItems);
subQuery2.from("AllType", "d");
com.sybase.persistence.QueryResultSet qs = SUP101DB.executeQuery(subQuery2);