org.apache.torque.util
Class Query

java.lang.Object
  extended byorg.apache.torque.util.Query

public class Query
extends java.lang.Object

Used to assemble an SQL SELECT query. Attributes exist for the sections of a SELECT: modifiers, columns, from clause, where clause, and order by clause. The various parts of the query are appended to buffers which only accept unique entries. This class is used primarily by BasePeer.

Version:
$Id: Query.java,v 1.8 2002/11/27 11:31:00 mpoeschl Exp $
Author:
John D. McNally, Sam Joseph

Field Summary
private static java.lang.String AND
           
private static java.lang.String BETWEEN
           
private static java.lang.String FROM
           
private  org.apache.commons.collections.StringStack fromTables
           
private static java.lang.String GROUP_BY
           
private  org.apache.commons.collections.StringStack groupByColumns
           
private  java.lang.String having
           
private static java.lang.String HAVING
           
private static java.lang.String IN
           
private  java.lang.String limit
           
private static java.lang.String LIMIT
           
private static java.lang.String OR
           
private static java.lang.String ORDER_BY
           
private  org.apache.commons.collections.StringStack orderByColumns
           
private  java.lang.String rowcount
           
private static java.lang.String ROWCOUNT
           
private static java.lang.String SELECT
           
private  org.apache.commons.collections.StringStack selectColumns
           
private  org.apache.commons.collections.StringStack selectModifiers
           
private static java.lang.String WHERE
           
private  org.apache.commons.collections.StringStack whereCriteria
           
 
Constructor Summary
Query()
           
 
Method Summary
 org.apache.commons.collections.StringStack getFromClause()
          Retrieve the from buffer in order to specify which tables are involved in this query.
 org.apache.commons.collections.StringStack getGroupByClause()
          Retrieve the group by columns buffer in order to specify which columns are used to group the results of the query.
 java.lang.String getHaving()
          Get the having clause.
 java.lang.String getLimit()
          Get the limit number.
 org.apache.commons.collections.StringStack getOrderByClause()
          Retrieve the order by columns buffer in order to specify which columns are used to sort the results of the query.
 java.lang.String getRowcount()
          Get the rowcount number.
 org.apache.commons.collections.StringStack getSelectClause()
          Retrieve the columns buffer in order to specify which columns are returned in this query.
 org.apache.commons.collections.StringStack getSelectModifiers()
          Retrieve the modifier buffer in order to add modifiers to this query.
 org.apache.commons.collections.StringStack getWhereClause()
          Retrieve the where buffer in order to specify the selection criteria E.g.
 void setHaving(java.lang.String having)
          Set the having clause.
 void setLimit(java.lang.String limit)
          Set the limit number.
 void setRowcount(java.lang.String rowcount)
          Set the rowcount number.
 java.lang.String toString()
          Outputs the query statement.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SELECT

private static final java.lang.String SELECT
See Also:
Constant Field Values

FROM

private static final java.lang.String FROM
See Also:
Constant Field Values

WHERE

private static final java.lang.String WHERE
See Also:
Constant Field Values

AND

private static final java.lang.String AND
See Also:
Constant Field Values

OR

private static final java.lang.String OR
See Also:
Constant Field Values

ORDER_BY

private static final java.lang.String ORDER_BY
See Also:
Constant Field Values

GROUP_BY

private static final java.lang.String GROUP_BY
See Also:
Constant Field Values

HAVING

private static final java.lang.String HAVING
See Also:
Constant Field Values

IN

private static final java.lang.String IN
See Also:
Constant Field Values

BETWEEN

private static final java.lang.String BETWEEN
See Also:
Constant Field Values

LIMIT

private static final java.lang.String LIMIT
See Also:
Constant Field Values

ROWCOUNT

private static final java.lang.String ROWCOUNT
See Also:
Constant Field Values

selectModifiers

private org.apache.commons.collections.StringStack selectModifiers

selectColumns

private org.apache.commons.collections.StringStack selectColumns

fromTables

private org.apache.commons.collections.StringStack fromTables

whereCriteria

private org.apache.commons.collections.StringStack whereCriteria

orderByColumns

private org.apache.commons.collections.StringStack orderByColumns

groupByColumns

private org.apache.commons.collections.StringStack groupByColumns

having

private java.lang.String having

limit

private java.lang.String limit

rowcount

private java.lang.String rowcount
Constructor Detail

Query

public Query()
Method Detail

getSelectModifiers

public org.apache.commons.collections.StringStack getSelectModifiers()
Retrieve the modifier buffer in order to add modifiers to this query. E.g. DISTINCT and ALL.

Returns:
A StringStack used to add modifiers.

getSelectClause

public org.apache.commons.collections.StringStack getSelectClause()
Retrieve the columns buffer in order to specify which columns are returned in this query.

Returns:
A StringStack used to add columns to be selected.

getFromClause

public org.apache.commons.collections.StringStack getFromClause()
Retrieve the from buffer in order to specify which tables are involved in this query.

Returns:
A StringStack used to add tables involved in the query.

getWhereClause

public org.apache.commons.collections.StringStack getWhereClause()
Retrieve the where buffer in order to specify the selection criteria E.g. column_a=3. Expressions added to the buffer will be separated using AND.

Returns:
A StringStack used to add selection criteria.

getOrderByClause

public org.apache.commons.collections.StringStack getOrderByClause()
Retrieve the order by columns buffer in order to specify which columns are used to sort the results of the query.

Returns:
A StringStack used to add columns to sort on.

getGroupByClause

public org.apache.commons.collections.StringStack getGroupByClause()
Retrieve the group by columns buffer in order to specify which columns are used to group the results of the query.

Returns:
A StringStack used to add columns to group on.

setHaving

public void setHaving(java.lang.String having)
Set the having clause. This is used to restrict which rows are returned.

Parameters:
having - A String.

setLimit

public void setLimit(java.lang.String limit)
Set the limit number. This is used to limit the number of rows returned by a query, and the row where the resultset starts.

Parameters:
limit - A String.

setRowcount

public void setRowcount(java.lang.String rowcount)
Set the rowcount number. This is used to limit the number of rows returned by Sybase and MS SQL/Server.

Parameters:
rowcount - A String.

getHaving

public java.lang.String getHaving()
Get the having clause. This is used to restrict which rows are returned based on some condition.

Returns:
A String that is the having clause.

getLimit

public java.lang.String getLimit()
Get the limit number. This is used to limit the number of returned by a query in Postgres.

Returns:
A String with the limit.

getRowcount

public java.lang.String getRowcount()
Get the rowcount number. This is used to limit the number of returned by a query in Sybase and MS SQL/Server.

Returns:
A String with the row count.

toString

public java.lang.String toString()
Outputs the query statement.

Returns:
A String with the query statement.


Copyright © 1999-2003 Apache Software Foundation. All Rights Reserved.