# Detached Criteria Builder

Hibernate also supports the concept of detached criterias.  They are most useful for join conditions, subselects, and to query outside the current session.

> Some applications need to create criteria queries in "detached mode", where the Hibernate session is not available. Then you can execute the search in an arbitrary session.

To create an instance of Detached Criteria Builder, simply call the *createSubcriteria()* method on your existing criteria.

If you use ORM in your ColdBox apps, you are hopefully already taking full advantage of [Criteria Builder](/v2.x-2/criteria-queries/coldbox-criteria-builder.md), ColdBox’s powerful, programmatic DSL builder for Hibernate Criteria queries (and if you’re not using it, you should!). With the new Detached Criteria Builder, you can expand the power and flexibility of your criteria queries with support for criteria and projection subqueries, all while using the same intuitive patterns of Criteria Builder. No fuss, just more flexibility and control for your criteria queries!

> "Some applications need to create criteria queries in "detached mode", where the Hibernate session is not available. It also allows you to express subqueries." Hibernate Docs

For more information about Detached Criteria and Subqueries, check out the following Hibernate documentation:

1. Hibernate Docs: <http://docs.jboss.org/hibernate/orm/3.5/reference/en/html/querycriteria.html#querycriteria-detachedqueries>
2. Hibernate DetachedCriteria: <http://docs.jboss.org/hibernate/orm/3.5/api/org/hibernate/criterion/DetachedCriteria.html>
3. Hibernate Subqueries: <http://docs.jboss.org/hibernate/orm/3.5/api/org/hibernate/criterion/Subqueries.html>

> **INFO** The best place to see all of the functionality of the Detached Criteria Builder is to check out the latest [API Docs](/v2.x-2/criteria-queries/coldbox-detached-criteria-builder.md).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://coldbox-orm.ortusbooks.com/v2.x-2/criteria-queries/coldbox-detached-criteria-builder.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
