CHECK GRANT Statement
The CHECK GRANT query is used to check whether the current user/role has been granted a specific privilege.
Syntax
The basic syntax of the query is as follows:
CHECK GRANT privilege[(column_name [,...])] [,...] ON {db.table[*]|db[*].*|*.*|table[*]|*}
privilege— Type of privilege.
Examples
If the user used to be granted the privilege, the responsecheck_grant will be 1. Otherwise, the response check_grant will be 0.
If table_1.col1 exists and current user is granted by privilege SELECT/SELECT(con) or role(with privilege), the response is 1.
CHECK GRANT SELECT(col1) ON table_1;
┌─result─┐
│ 1 │
└────────┘
If table_2.col2 doesn't exists, or current user is not granted by privilege SELECT/SELECT(con) or role(with privilege), the response is 0.
CHECK GRANT SELECT(col2) ON table_2;
┌─result─┐
│ 0 │
└────────┘
Wildcard
Specifying privileges you can use asterisk (*) instead of a table or a database name. Please check WILDCARD GRANTS for wildcard rules.