## Uses of Interface
org.apache.cayenne.query.Select

- Packages that use Select
  Package | Description
  --- | ---
  org.apache.cayenne | Contains persistence APIs directly accessible by users.
  org.apache.cayenne.access | Contains classes that make up Cayenne ORM stack.
  org.apache.cayenne.access.jdbc | Contains classes that handle JDBC interactions.
  org.apache.cayenne.access.translator.select |
  org.apache.cayenne.dba.db2 | IBM DB2 DbAdapter.
  org.apache.cayenne.dba.derby | Apache Derby DbAdapter.
  org.apache.cayenne.dba.firebird |
  org.apache.cayenne.dba.h2 |
  org.apache.cayenne.dba.ingres |
  org.apache.cayenne.dba.sqlite |
  org.apache.cayenne.query | Defines standard queries supported by Cayenne and extension mechanism to create custom queries.

- - ### Uses of Select in org.apache.cayenne

    Methods in org.apache.cayenne with parameters of type Select
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> ResultBatchIterator<T>` | BaseContext.`batchIterator​(Select<T> query, int size)` |
    `<T> ResultBatchIterator<T>` | ObjectContext.`batchIterator​(Select<T> query, int size)` | Creates a ResultBatchIterator based on the provided query and batch size.
    `<T> void` | BaseContext.`iterate​(Select<T> query, ResultIteratorCallback<T> callback)` |
    `<T> void` | ObjectContext.`iterate​(Select<T> query, ResultIteratorCallback<T> callback)` | Creates a ResultIterator based on the provided query and passes it to a callback for processing.
    `abstract <T> ResultIterator<T>` | BaseContext.`iterator​(Select<T> query)` |
    `<T> ResultIterator<T>` | ObjectContext.`iterator​(Select<T> query)` | Creates a ResultIterator based on the provided query.
    `<T> List<T>` | BaseContext.`select​(Select<T> query)` |
    `<T> List<T>` | ObjectContext.`select​(Select<T> query)` | Executes a selecting query, returning a list of persistent objects or data rows.
    `<T> T` | BaseContext.`selectFirst​(Select<T> query)` |
    `<T> T` | ObjectContext.`selectFirst​(Select<T> query)` | Selects a single object using provided query.
    `<T> T` | BaseContext.`selectOne​(Select<T> query)` |
    `<T> T` | ObjectContext.`selectOne​(Select<T> query)` | Executes a selecting query, returning either NULL if query matched no objects, or a single object.

  - ### Uses of Select in org.apache.cayenne.access

    Methods in org.apache.cayenne.access with parameters of type Select
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> ResultIterator<T>` | DataContext.`iterator​(Select<T> query)` |
    `SelectTranslator` | DataNode.`selectTranslator​(Select<?> query)` |

  - ### Uses of Select in org.apache.cayenne.access.jdbc

    Fields in org.apache.cayenne.access.jdbc declared as Select
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Select<?>` | SelectAction.`query` |

    Constructors in org.apache.cayenne.access.jdbc with parameters of type Select
    Constructor | Description
    --- | ---
    `SelectAction​(Select<?> query, DataNode dataNode)` |

  - ### Uses of Select in org.apache.cayenne.access.translator.select

    Methods in org.apache.cayenne.access.translator.select that return Select
    Modifier and Type | Method | Description
    --- | --- | ---
    `Select<?>` | TranslatableQueryWrapper.`unwrap()` |

    Methods in org.apache.cayenne.access.translator.select with parameters of type Select
    Modifier and Type | Method | Description
    --- | --- | ---
    `SelectTranslator` | DefaultSelectTranslatorFactory.`translator​(Select<?> query, DbAdapter adapter, EntityResolver entityResolver)` |
    `SelectTranslator` | SelectTranslatorFactory.`translator​(Select<?> query, DbAdapter adapter, EntityResolver entityResolver)` | Creates a proper translator for a BatchQuery

  - ### Uses of Select in org.apache.cayenne.dba.db2

    Constructors in org.apache.cayenne.dba.db2 with parameters of type Select
    Constructor | Description
    --- | ---
    `DB2SelectAction​(Select<?> query, DataNode dataNode)` |

  - ### Uses of Select in org.apache.cayenne.dba.derby

    Constructors in org.apache.cayenne.dba.derby with parameters of type Select
    Constructor | Description
    --- | ---
    `DerbySelectAction​(Select<?> query, DataNode dataNode)` |

  - ### Uses of Select in org.apache.cayenne.dba.firebird

    Constructors in org.apache.cayenne.dba.firebird with parameters of type Select
    Constructor | Description
    --- | ---
    `FirebirdSelectAction​(Select<?> query, DataNode dataNode)` |

  - ### Uses of Select in org.apache.cayenne.dba.h2

    Constructors in org.apache.cayenne.dba.h2 with parameters of type Select
    Constructor | Description
    --- | ---
    `H2SelectAction​(Select<?> query, DataNode dataNode)` |

  - ### Uses of Select in org.apache.cayenne.dba.ingres

    Constructors in org.apache.cayenne.dba.ingres with parameters of type Select
    Constructor | Description
    --- | ---
    `IngresSelectAction​(Select<T> query, DataNode dataNode)` |

  - ### Uses of Select in org.apache.cayenne.dba.sqlite

    Constructors in org.apache.cayenne.dba.sqlite with parameters of type Select
    Constructor | Description
    --- | ---
    `SQLiteSelectAction​(Select<?> query, DataNode dataNode)` |

  - ### Uses of Select in org.apache.cayenne.query

    Classes in org.apache.cayenne.query that implement Select
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ColumnSelect<T>` | A helper builder for queries selecting individual properties based on the root object.
    `class` | `FluentSelect<T>` | Base class for `ObjectSelect` and `ColumnSelect`
    `class` | `MappedSelect<T>` | A query that represents a named parameterized selecting query stored in the mapping.
    `class` | `ObjectSelect<T>` | A selecting query providing chainable API.
    `class` | `PrefetchSelectQuery<T>` | A SelectQuery to perform a prefetch based on another query.
    `class` | `SelectById<T>` | A query to select objects by id.
    `class` | `SelectQuery<T>` | Deprecated. since 4.2, use `ObjectSelect`
    `class` | `SQLSelect<T>` | A selecting query based on raw SQL and featuring fluent API.