# Interface ExecuteQueryProps
Props for ExecuteQuery component.
# Properties
# children
children?: (
queryResult) =>ReactNode
Function as child component that is called to render the query results
# Parameters
| Parameter | Type | 
|---|---|
queryResult |  ExecuteQueryResult | 
# Returns
ReactNode
# count
count?:
number
Number of rows to return in the query result
If not specified, the default value is 20000
# dataSource
dataSource?:
DataSource
Data source the query is run against - e.g. Sample ECommerce
If not specified, the query will use the defaultDataSource specified in the parent Sisense Context.
# dimensions
dimensions?:
Attribute[]
Dimensions of the query
# filters
filters?:
FilterRelations|Filter[]
Filters that will slice query results
# highlights
highlights?:
Filter[]
Highlight filters that will highlight results that pass filter criteria
# measures
measures?:
Measure[]
Measures of the query
# offset
offset?:
number
Offset of the first row to return
If not specified, the default value is 0
# onBeforeQuery
onBeforeQuery?: (
jaql) =>any
Sync or async callback that allows to modify the JAQL payload before it is sent to the server.
Note: In React, wrap this function in useCallback hook to avoid triggering query execution on each render.
const onBeforeQuery = useCallback((jaql) => {
  // modify jaql here
  return jaql;
}, []);
# Parameters
| Parameter | Type | 
|---|---|
jaql |  any | 
# Returns
any
# onDataChanged
onDataChanged?: (
data) =>void
Callback function that is evaluated when query results are ready
# Parameters
| Parameter | Type | 
|---|---|
data |  QueryResultData | 
# Returns
void
# ungroup
ungroup?:
boolean
Boolean flag whether to include ungroup: true in non-aggregated JAQL queries.
This improves computation and performance of querying tables when no aggregation is needed
If not specified, the default value is false