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. |