

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 支援的 SQL for Aurora DSQL
<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`。<br />如需 `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)`<br />`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 命令。


| 命令 | 支援的子句 | Alias (別名) | 
| --- | --- | --- | 
| `COMMIT` | [`WORK` \| `TRANSACTION`]<br />[`AND NO CHAIN`] | `END` | 
| `BEGIN` | [`WORK` \| `TRANSACTION`]<br />[`ISOLATION LEVEL REPEATABLE READ`]<br />[`READ WRITE` \| `READ ONLY`] |  | 
| `START TRANSACTION` | [`ISOLATION LEVEL REPEATABLE READ`]<br />[`READ WRITE` \| `READ ONLY`] |  | 
| `ROLLBACK` | [`WORK` \| `TRANSACTION`]<br />[`AND NO CHAIN`] | `ABORT` | 

## 公用程式命令
<a name="dsql-utility"></a>

Aurora DSQL 支援下列 PostgreSQL 公用程式命令：
+ `EXPLAIN`
+ `ANALYZE` (僅限關聯名稱)