All Products
Search
Document Center

Database Autonomy Service:GetQueryOptimizeDataStats

Last Updated:Mar 13, 2026

Queries information about SQL templates based on query governance data.

Operation description

  • If you use an Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than V2.1.8. We recommend that you use the latest version.

  • The version of your Database Autonomy Service (DAS) SDK must be V2.1.8 or later.

  • If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.

  • This operation supports the following database engines:

    • ApsaraDB RDS for MySQL

    • PolarDB for MySQL

    • ApsaraDB RDS for PostgreSQL

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

hdm:GetQueryOptimizeDataStats

get

*All Resource

*

None None

Request parameters

Parameter

Type

Required

Description

Example

Engine

string

Yes

The database engine. Valid values:

  • MySQL

  • PolarDBMySQL

  • PostgreSQL

MySQL

InstanceIds

string

No

The instance IDs. Separate multiple IDs with commas (,).

rm-2ze8g2am97624****

TagNames

string

No

The reserved parameter.

None

Keywords

string

No

The keywords of the SQL template. Separate multiple keywords with spaces.

select update

LogicalOperator

string

No

The logical relationship between multiple keywords. Valid values:

  • or

  • and

or

Rules

string

No

The tags that are used to filter SQL templates. Separate multiple tags with commas (,). For more information, see Query governance.

DAS_NOT_IMPORTANT

DbNames

string

No

The name of the database to be queried.

testdb01

Time

string

Yes

The time range to query. Specify the time in the UNIX timestamp format. Unit: milliseconds.

1642953600000

PageSize

string

No

The number of entries per page. Default value: 10.

10

PageNo

string

No

The page number. Pages start from page 1. Default value: 1.

1

OrderBy

string

No

The field by which to sort the returned entries. Default value: count. Valid values:

  • count: the number of executions.

  • maxQueryTime: the longest execution time.

  • avgQueryTime: the average execution time.

  • maxLockTime: the longest lock wait time.

  • avgLockTime: the longest lock wait time.

  • maxRowsExamined: the largest number of scanned rows.

  • avgRowsExamined: the average number of scanned rows.

  • maxRowsSent: the largest number of returned rows.

  • avgRowsSent: the average number of returned rows.

count

Asc

string

No

Specifies whether to sort the returned entries in ascending order. Default value: true. Valid values:

  • true: sorts the returned entries in ascending order.

  • false: does not sort the returned entries in ascending order.

true

OnlyOptimizedSql

string

No

Specifies whether to query only SQL templates that need to be optimized. Default value: false. Valid values:

  • true: queries only SQL templates that need to be optimized.

  • false: does not query only SQL statements that need to be optimized.

false

SqlIds

string

No

The SQL template ID. You can query the ID of a template by calling the GetQueryOptimizeExecErrorStats operation.

2e8147b5ca2dfc640dfd5e43d96a****

Region

string

No

The region in which the instance resides. Valid values:

  • cn-china: Chinese mainland

  • cn-hongkong: China (Hong Kong)

  • ap-southeast-1: Singapore

This parameter takes effect only if InstanceIds is left empty. If you leave InstanceIds empty, the system obtains data from the region set by Region. By default, Region is set to cn-china. If you specify InstanceIds, Region does not take effect and the system obtains data from the region in which the first specified instance resides.****

Note

Set this parameter to cn-china for the instances that are created in the regions in the Chinese mainland.

cn-china

User

string

No

The account of the database to be queried.

testUser

Response elements

Element

Type

Description

Example

object

Code

string

The HTTP status code returned.

200

Message

string

The returned message.

Successful

Data

object

The data returned.

Total

integer

The total number of entries returned.

10

PageNo

integer

The reserved parameter.

None

PageSize

integer

The reserved parameter.

None

Extra

string

The reserved parameter.

None

List

array<object>

The information about the SQL templates.

array<object>

InstanceId

string

The instance ID.

rm-2ze8g2am97624****

Dbname

string

The name of the database to which the SQL template belongs.

testdb01

SqlId

string

The SQL template ID.

2e8147b5ca2dfc640dfd5e43d96a****

SqlType

string

The type of the SQL statement.

INSERT

Psql

string

The SQL template.

select 1

SqlSample

string

The sample query that took the longest time to execute.

select 2

Count

integer

The number of times that the SQL template is executed.

100

MaxQueryTime

number

The longest query execution time. Unit: seconds.

1.1

AvgQueryTime

number

The average query execution time. Unit: seconds.

1.1

MaxLockTime

number

The longest lock wait time. Unit: seconds.

0.1

AvgLockTime

number

The average lock wait time. Unit: seconds.

0.1

MaxRowsExamined

integer

The largest number of scanned rows.

100000

AvgRowsExamined

number

The average number of scanned rows.

100.1

MaxRowsSent

integer

The largest number of returned rows.

10000

AvgRowsSent

number

The average number of returned rows.

100.1

MaxRowsAffected

integer

The largest number of rows affected by the SQL template.

Note

A value of -1 indicates that this parameter is not collected.

10000

AvgRowsAffected

number

The average number of rows affected by the SQL statement.

Note

A value of -1 indicates that this parameter is not collected.

100.1

RuleList

array<object>

The information about the rules.

object

Name

string

The rule name.

DAS_NOT_IMPORTANT

Type

string

The type of the rule. Valid values:

  • Predefined

  • UserDefined

Predefined

User

string

The account of the database.

testUser

RequestId

string

The request ID.

B6D17591-B48B-4D31-9CD6-9B9796B2****

Success

string

Indicates whether the request was successful. Valid values:

  • true: The request was successful.

  • false: The request failed.

true

Examples

Success response

JSON format

{
  "Code": "200",
  "Message": "Successful",
  "Data": {
    "Total": 10,
    "PageNo": 0,
    "PageSize": 0,
    "Extra": "None",
    "List": [
      {
        "InstanceId": "rm-2ze8g2am97624****",
        "Dbname": "testdb01",
        "SqlId": "2e8147b5ca2dfc640dfd5e43d96a****",
        "SqlType": "INSERT",
        "Psql": "select 1",
        "SqlSample": "select 2",
        "Count": 100,
        "MaxQueryTime": 1.1,
        "AvgQueryTime": 1.1,
        "MaxLockTime": 0.1,
        "AvgLockTime": 0.1,
        "MaxRowsExamined": 100000,
        "AvgRowsExamined": 100.1,
        "MaxRowsSent": 10000,
        "AvgRowsSent": 100.1,
        "MaxRowsAffected": 10000,
        "AvgRowsAffected": 100.1,
        "RuleList": [
          {
            "Name": "DAS_NOT_IMPORTANT",
            "Type": "Predefined"
          }
        ],
        "User": "testUser"
      }
    ]
  },
  "RequestId": "B6D17591-B48B-4D31-9CD6-9B9796B2****",
  "Success": "true"
}

Error codes

HTTP status code

Error code

Error message

Description

400 InvalidParams The request parameters are invalid.
403 NoPermission You are not authorized to do this action.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.