On this page 
  
  
CockroachDB supports the following SQL statements. Click a statement for more details.
Data Manipulation Statements
| Statement | Usage | 
|---|---|
CREATE TABLE AS | 
Create a new table in a database using the results from a selection query. | 
DELETE | 
Delete specific rows from a table. | 
EXPLAIN | 
View debugging and analysis details for a statement that operates over tabular data. | 
IMPORT | 
Import an entire table's data via CSV files. | 
INSERT | 
Insert rows into a table. | 
SELECT | 
Select specific rows and columns from a table and optionally compute derived values. | 
SHOW TRACE | 
Execute a statement and then return a trace of its actions through all of CockroachDB's software layers. | 
TABLE | 
Select all rows and columns from a table. | 
TRUNCATE | 
Delete all rows from specified tables. | 
UPDATE | 
Update rows in a table. | 
UPSERT | 
Insert rows that do not violate uniqueness constraints; update rows that do. | 
VALUES | 
Return rows containing specific values. | 
Data Definition Statements
| Statement | Usage | 
|---|---|
ADD COLUMN | 
Add columns to a table. | 
ADD CONSTRAINT | 
Add a constraint to a column. | 
ALTER COLUMN | 
Change a column's Default constraint or drop the Not Null constraint. | 
ALTER DATABASE | 
Apply a schema change to a database. | 
ALTER INDEX | 
Apply a schema change to an index. | 
ALTER SEQUENCE | 
New in v2.0: Apply a schema change to a sequence. | 
ALTER TABLE | 
Apply a schema change to a table. | 
ALTER USER | 
New in v2.0: Add or change a user's password. | 
ALTER VIEW | 
Rename a view. | 
CREATE DATABASE | 
Create a new database. | 
CREATE INDEX | 
Create an index for a table. | 
CREATE SEQUENCE | 
New in v2.0: Create a new sequence. | 
CREATE TABLE | 
Create a new table in a database. | 
CREATE TABLE AS | 
Create a new table in a database using the results from a selection query. | 
CREATE VIEW | 
Create a new view in a database. | 
DROP COLUMN | 
Remove columns from a table. | 
DROP CONSTRAINT | 
Remove constraints from a column. | 
DROP DATABASE | 
Remove a database and all its objects. | 
DROP INDEX | 
Remove an index for a table. | 
DROP SEQUENCE | 
New in v2.0: Remove a sequence. | 
DROP TABLE | 
Remove a table. | 
DROP VIEW | 
Remove a view. | 
EXPERIMENTAL_AUDIT | 
Turn SQL audit logging on or off for a table. | 
RENAME COLUMN | 
Rename a column in a table. | 
RENAME DATABASE | 
Rename a database. | 
RENAME INDEX | 
Rename an index for a table. | 
RENAME SEQUENCE | 
Rename a sequence. | 
RENAME TABLE | 
Rename a table or move a table between databases. | 
SHOW COLUMNS | 
View details about columns in a table. | 
SHOW CONSTRAINTS | 
List constraints on a table. | 
SHOW CREATE SEQUENCE | 
New in v2.0: View the CREATE SEQUENCE statement that would create a copy of the specified sequence. | 
SHOW CREATE TABLE | 
View the CREATE TABLE statement that would create a copy of the specified table. | 
SHOW CREATE VIEW | 
View the CREATE VIEW statement that would create a copy of the specified view. | 
SHOW DATABASES | 
List databases in the cluster. | 
SHOW INDEX | 
View index information for a table. | 
SHOW SCHEMAS | 
New in v2.0: List the schemas in a database. | 
SHOW TABLES | 
List tables or views in a database or virtual schema. | 
SHOW EXPERIMENTAL_RANGES | 
Show range information about a specific table or index. | 
SPLIT AT | 
Force a key-value layer range split at the specified row in the table or index. | 
VALIDATE CONSTRAINT | 
Check whether values in a column match a constraint on the column. | 
Transaction Management Statements
| Statement | Usage | 
|---|---|
BEGIN | 
Initiate a transaction. | 
COMMIT | 
Commit the current transaction. | 
RELEASE SAVEPOINT | 
When using the CockroachDB-provided function for client-side transaction retries, commit the transaction's changes once there are no retryable errors. | 
ROLLBACK | 
Discard all updates made by the current transaction or, when using the CockroachDB-provided function for client-side transaction retries, rollback to the cockroach_restart savepoint and retry the transaction. | 
SAVEPOINT | 
When using the CockroachDB-provided function for client-side transaction retries, start a retryable transaction. | 
SET TRANSACTION | 
Set the isolation level or priority for the session or for an individual transaction. | 
SHOW | 
View the current transaction settings. | 
Access Management Statements
| Statement | Usage | 
|---|---|
CREATE ROLE | 
New in v2.0: Create SQL roles, which are groups containing any number of roles and users as members. | 
CREATE USER | 
Create SQL users, which lets you control privileges on your databases and tables. | 
DROP ROLE | 
New in v2.0: Remove one or more SQL roles. | 
DROP USER | 
Remove one or more SQL users. | 
GRANT <privileges> | 
Grant privileges to users or roles. | 
GRANT <roles> | 
New in v2.0: Add a role or user as a member to a role. | 
REVOKE <privileges> | 
Revoke privileges from users or roles. | 
REVOKE <roles> | 
New in v2.0: Revoke a role or user's membership to a role. | 
SHOW GRANTS | 
View privileges granted to users. | 
SHOW ROLES | 
Lists the roles for all databases. | 
SHOW USERS | 
Lists the users for all databases. | 
Session Management Statements
| Statement | Usage | 
|---|---|
RESET | 
Reset a session variable to its default value. | 
SET | 
Set a current session variable. | 
SET TRANSACTION | 
Set the isolation level or priority for an individual transaction. | 
SHOW | 
List the current session or transaction settings. | 
Cluster Management Statements
| Statement | Usage | 
|---|---|
RESET CLUSTER SETTING | 
Reset a cluster setting to its default value. | 
SET CLUSTER SETTING | 
Set a cluster-wide setting. | 
SHOW ALL CLUSTER SETTINGS | 
List the current cluster-wide settings. | 
SHOW SESSIONS | 
List details about currently active sessions. | 
Query Management Statements
| Statement | Usage | 
|---|---|
CANCEL QUERY | 
Cancel a running SQL query. | 
SHOW QUERIES | 
List details about current active SQL queries. | 
Job Management Statements
Jobs in CockroachDB represent tasks that might not complete immediately, such as schema changes or enterprise backups or restores.
| Statement | Usage | 
|---|---|
CANCEL JOB | 
Cancel a BACKUP, RESTORE, or IMPORT job. | 
PAUSE JOB | 
Pause a BACKUP, RESTORE, or IMPORT job. | 
RESUME JOB | 
Resume paused BACKUP, RESTORE, or IMPORT jobs. | 
SHOW JOBS | 
View information on jobs. | 
Backup & Restore Statements (Enterprise)
The following statements are available only to enterprise users.
| Statement | Usage | 
|---|---|
BACKUP | 
Create disaster recovery backups of databases and tables. | 
RESTORE | 
Restore databases and tables using your backups. | 
SHOW BACKUP | 
List the contents of a backup. |