// simple query
Account.executeQuery("select distinct a.number from Account a")
// using with list of parameters
Account.executeQuery("select distinct a.number from Account a " +
"where a.branch = ? and a.created > ?",
['London', lastMonth])
// using with a single parameter and pagination params
Account.executeQuery("select distinct a.number from Account a " +
"where a.branch = ?", ['London'],
[max: 10, offset: 5])
// using with Map of named parameters
Account.executeQuery("select distinct a.number from Account a " +
"where a.branch = :branch",
[branch: 'London'])
// using with Map of named parameters and pagination params
Account.executeQuery("select distinct a.number from Account a " +
"where a.branch = :branch",
[branch: 'London', max: 10, offset: 5])
// same as previous
Account.executeQuery("select distinct a.number from Account a " +
"where a.branch = :branch",
[branch: 'London'], [max: 10, offset: 5])
// tell underlying Hibernate Query object to not attach newly retrieved
// objects to the session, will only save with explicit `save`
Account.executeQuery("select distinct a.number from Account a",
null, [readOnly: true])
// time request out after 18 seconds
Account.executeQuery("select distinct a.number from Account a",
null, [timeout: 18])
// have Hibernate Query object return 30 rows at a time
Account.executeQuery("select distinct a.number from Account a",
null, [fetchSize: 30])
// modify the FlushMode of the Query (default is `FlushMode.AUTO`)
Account.executeQuery("select distinct a.number from Account a",
null, [flushMode: FlushMode.MANUAL])
executeQuery
目的
執行 HQL 查詢
範例
說明
executeQuery
方法允許執行任意 HQL 查詢。HQL 查詢可以傳回網域類別實例,或當查詢選取個別欄位或計算值時傳回指定資料的 `Array`。基本語法為
Book.executeQuery(String query)
Book.executeQuery(String query, List positionalParams)
Book.executeQuery(String query, List positionalParams, Map metaParams)
Book.executeQuery(String query, Map namedParams)
Book.executeQuery(String query, Map namedParams, Map metaParams)
參數
-
query
- HQL 查詢 -
positionalParams
- 位置化參數化查詢的參數 `List` -
namedParams
- 命名參數化查詢的命名參數 `Map` -
metaParams
- 分頁參數 `max` 或/和 `offset` 的 `Map`,以及 Hibernate 查詢參數 `readOnly`、`fetchSize`、`timeout` 和 `flushMode`