mirror of https://github.com/apache/druid.git
Docs: Add query example
This commit is contained in:
parent
4648a41cab
commit
a17a2534f7
|
@ -85,20 +85,15 @@ The request body takes the following properties:
|
||||||
|
|
||||||
* `context`: JSON object containing optional [SQL query context parameters](../querying/sql-query-context.md), such as to set the query ID, time zone, and whether to use an approximation algorithm for distinct count.
|
* `context`: JSON object containing optional [SQL query context parameters](../querying/sql-query-context.md), such as to set the query ID, time zone, and whether to use an approximation algorithm for distinct count.
|
||||||
|
|
||||||
* `parameters`: List of query parameters for parameterized queries. Each parameter in the array should be a JSON object containing the parameter's SQL data type and parameter value. For a list of supported SQL types, see [Data types](../querying/sql-data-types.md).
|
* `parameters`: List of query parameters for parameterized queries. Each parameter in the array should be a JSON object containing the parameter's SQL data type and parameter value. For more information on using dynamic parameters, see [Dynamic parameters](../querying/sql.md#dynamic-parameters). For a list of supported SQL types, see [Data types](../querying/sql-data-types.md).
|
||||||
|
|
||||||
For example:
|
For example:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
"parameters": [
|
{
|
||||||
{
|
"query": "SELECT \"arrayDouble\" FROM \"array_example\" WHERE ARRAY_CONTAINS(\"arrayDouble\", ?)",
|
||||||
"type": "VARCHAR",
|
"parameters": [{"type": "ARRAY", "value": [999, null, 5.5]}]
|
||||||
"value": "bar"
|
}
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "ARRAY",
|
|
||||||
"value": [-25.7, null, 36.85]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Responses
|
#### Responses
|
||||||
|
@ -155,7 +150,6 @@ If you detect a truncated response, treat it as an error.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
#### Sample request
|
#### Sample request
|
||||||
|
|
||||||
The following example retrieves all rows in the `wikipedia` datasource where the `user` is `BlueMoon2662`. The query is assigned the ID `request01` using the `sqlQueryId` context parameter. The optional properties `header`, `typesHeader`, and `sqlTypesHeader` are set to `true` to include type information to the response.
|
The following example retrieves all rows in the `wikipedia` datasource where the `user` is `BlueMoon2662`. The query is assigned the ID `request01` using the `sqlQueryId` context parameter. The optional properties `header`, `typesHeader`, and `sqlTypesHeader` are set to `true` to include type information to the response.
|
||||||
|
|
|
@ -403,7 +403,7 @@ The following example query uses the [ARRAY_CONTAINS](./sql-functions.md#array_c
|
||||||
|
|
||||||
```sql
|
```sql
|
||||||
{
|
{
|
||||||
"query": "SELECT doubleArrayColumn from druid.table where ARRAY_CONTAINS(?, doubleArrayColumn)",
|
"query": "SELECT doubleArrayColumn from druid.table where ARRAY_CONTAINS(doubleArrayColumn, ?)",
|
||||||
"parameters": [
|
"parameters": [
|
||||||
{
|
{
|
||||||
"type": "ARRAY",
|
"type": "ARRAY",
|
||||||
|
@ -428,17 +428,16 @@ SELECT * FROM druid.foo WHERE dim1 like CONCAT('%', CAST (? AS VARCHAR), '%')
|
||||||
Dynamic parameters can even replace arrays, reducing the parsing time. Refer to the parameters in the [API request body](../api-reference/sql-api.md#request-body) for usage.
|
Dynamic parameters can even replace arrays, reducing the parsing time. Refer to the parameters in the [API request body](../api-reference/sql-api.md#request-body) for usage.
|
||||||
|
|
||||||
```sql
|
```sql
|
||||||
SELECT arrayColumn from druid.table where ARRAY_CONTAINS(?, arrayColumn)
|
SELECT arrayColumn from druid.table where ARRAY_CONTAINS(arrayColumn, ?)
|
||||||
```
|
```
|
||||||
|
|
||||||
With this, an IN filter being supplied with a lot of values, can be replaced by a dynamic parameter passed inside [SCALAR_IN_ARRAY](sql-functions.md#scalar_in_array)
|
You can replace an IN filter with many values by dynamically passing a parameter into [SCALAR_IN_ARRAY](sql-functions.md#scalar_in_array).
|
||||||
|
For sample java queries, see [Dynamic parameters](../api-reference/sql-jdbc.md#dynamic-parameters).
|
||||||
|
|
||||||
```sql
|
```sql
|
||||||
SELECT count(city) from druid.table where SCALAR_IN_ARRAY(city, ?)
|
SELECT count(city) from druid.table where SCALAR_IN_ARRAY(city, ?)
|
||||||
```
|
```
|
||||||
|
|
||||||
sample java code using dynamic parameters is provided [here](../api-reference/sql-jdbc.md#dynamic-parameters).
|
|
||||||
|
|
||||||
## Reserved keywords
|
## Reserved keywords
|
||||||
|
|
||||||
Druid SQL reserves certain keywords which are used in its query language. Apache Druid inherits all of the reserved keywords from [Apache Calcite](https://calcite.apache.org/docs/reference.html#keywords). In addition to these, the following reserved keywords are unique to Apache Druid:
|
Druid SQL reserves certain keywords which are used in its query language. Apache Druid inherits all of the reserved keywords from [Apache Calcite](https://calcite.apache.org/docs/reference.html#keywords). In addition to these, the following reserved keywords are unique to Apache Druid:
|
||||||
|
|
Loading…
Reference in New Issue