

# Aurora DSQL でサポートされている SQL
<a name="working-with-postgresql-compatibility-supported-sql-features"></a>

Aurora DSQL は、主要な PostgreSQL SQL 機能を幅広くサポートしています。以下のセクションでは、PostgreSQL 式の一般的なサポートについて説明します。これはすべてを網羅したリストではありません。

## `SELECT` コマンド
<a name="dsql-select"></a>

Aurora DSQL は、`SELECT` コマンドの次の句をサポートしています。


| プライマリ句 | サポートされている句 | 
| --- | --- | 
|  `FROM`  |    | 
|  `GROUP BY`  |  `ALL`, `DISTINCT`  | 
|  `ORDER BY`  |  `ASC`, `DESC`, `NULLS`  | 
|  `LIMIT`  |    | 
|  `DISTINCT`  |    | 
|  `HAVING`  |    | 
|  `USING`  |    | 
|  `WITH` (テーブル共通表現)  |    | 
|  `INNER JOIN`  |  `ON`  | 
|  `OUTER JOIN`  |  `LEFT`, `RIGHT`, `FULL`, `ON`  | 
|  `CROSS JOIN`  |  `ON`  | 
|  `UNION`  |  `ALL`  | 
|  `INTERSECT`  |  `ALL`  | 
|  `EXCEPT`  |  `ALL`  | 
|  `OVER`  |  `RANK ()`, `PARTITION BY`  | 
|  `FOR UPDATE`  |    | 

## データ定義言語 (DDL)
<a name="dsql-ddl"></a>

Aurora DSQL は、次の PostgreSQL DDL コマンドをサポートしています。


| コマンド | プライマリ句 | サポートされている句 | 
| --- | --- | --- | 
|  `CREATE`  |  `TABLE`  |  `CREATE TABLE` コマンドでサポートされている構文については、「[`CREATE TABLE`](create-table-syntax-support.md)」を参照してください。  | 
|  `ALTER`  |  `TABLE`  |  `ALTER TABLE` コマンドでサポートされている構文については、「[`ALTER TABLE`](alter-table-syntax-support.md)」を参照してください。  | 
|  `DROP`  |  `TABLE`  |    | 
|  `CREATE`  |  `[UNIQUE] INDEX ASYNC`  |  このコマンドを、`ON`、`NULLS FIRST`、`NULLS LAST` のパラメータとともに使用できます。 `CREATE INDEX ASYNC` コマンドでサポートされている構文については、「[Aurora DSQL の非同期インデックス](working-with-create-index-async.md)」を参照してください。  | 
|  `DROP`  |  `INDEX`  |    | 
|  `CREATE`  |  `VIEW`  |  `CREATE VIEW` コマンドでサポートされている構文について詳しくは、「[`CREATE VIEW`](create-view.md)」を参照してください。  | 
| ALTER | VIEW |  `ALTER VIEW` コマンドでサポートされている構文については、「[`ALTER VIEW`](alter-view-syntax-support.md)」を参照してください。  | 
| DROP | VIEW | DROP VIEW コマンドでサポートされている構文については、「[`DROP VIEW`](drop-view-overview.md)」を参照してください。 | 
|  `CREATE`  |  `SEQUENCE`  |  `CREATE SEQUENCE` コマンドでサポートされている構文については、「[`CREATE SEQUENCE`](create-sequence-syntax-support.md)」を参照してください。  | 
|  `ALTER`  |  `SEQUENCE`  |  `ALTER SEQUENCE` コマンドでサポートされている構文については、「[`ALTER SEQUENCE`](alter-sequence-syntax-support.md)」を参照してください。  | 
|  `DROP`  |  `SEQUENCE`  |  `DROP SEQUENCE` コマンドでサポートされている構文については、「[`DROP SEQUENCE`](drop-sequence-syntax-support.md)」を参照してください。  | 
|  `CREATE`  |  `ROLE`, `WITH`  |    | 
|  `CREATE`  |  `FUNCTION`  |  `LANGUAGE SQL`  | 
|  `CREATE`  |  `DOMAIN`  |    | 

## データ操作言語 (DML)
<a name="dsql-dml"></a>

Aurora DSQL は、次の PostgreSQL DML コマンドをサポートしています。


| コマンド | プライマリ句 | サポートされている句 | 
| --- | --- | --- | 
|  `INSERT`  |  `INTO`  | `VALUES`SELECT | 
|  `UPDATE`  |  `SET`  |  `WHERE (SELECT)` `FROM, WITH`  | 
| DELETE | FROM | USING, WHERE | 

## データ制御言語 (DCL)
<a name="dsql-dcl"></a>

Aurora DSQL は、次の PostgreSQL DCL コマンドをサポートしています。


| コマンド | サポートされている句 | 
| --- | --- | 
|  `GRANT`  |  `ON`, `TO`  | 
|  `REVOKE`  |  `ON`, `FROM`, `CASCADE`, `RESTRICT`  | 

## トランザクション制御言語 (TCL)
<a name="dsql-tcl"></a>

Aurora DSQL は、次の PostgreSQL TCL コマンドをサポートしています。


| コマンド | サポートされている句 | エイリアス | 
| --- | --- | --- | 
|  `COMMIT`  |  [`WORK` \$1 `TRANSACTION`] [`AND NO CHAIN`]  |  `END`  | 
|  `BEGIN`  |  [`WORK` \$1 `TRANSACTION`] [`ISOLATION LEVEL REPEATABLE READ`] [`READ WRITE` \$1 `READ ONLY`]  |    | 
|  `START TRANSACTION`  |  [`ISOLATION LEVEL REPEATABLE READ`] [`READ WRITE` \$1 `READ ONLY`]  |    | 
|  `ROLLBACK`  |  [`WORK` \$1 `TRANSACTION`] [`AND NO CHAIN`]  |  `ABORT`  | 

## ユーティリティコマンド
<a name="dsql-utility"></a>

Aurora DSQL は、次の PostgreSQL ユーティリティコマンドをサポートしています。
+ `EXPLAIN`
+ `ANALYZE` (リレーション名のみ)