

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# SQL supportato per Aurora DSQL
<a name="working-with-postgresql-compatibility-supported-sql-features"></a>

Aurora DSQL supporta un’ampia serie di funzionalità SQL di base di PostgreSQL. Nelle sezioni seguenti, è possibile ottenere informazioni sul supporto generale delle espressioni PostgreSQL. Questo elenco non è completo.

## Comando `SELECT`
<a name="dsql-select"></a>

Aurora DSQL supporta le seguenti clausole del comando `SELECT`.


| Clausola primaria | Clausole supportate | 
| --- | --- | 
| `FROM` |  | 
| `GROUP BY` | `ALL`, `DISTINCT` | 
| `ORDER BY` | `ASC`, `DESC`, `NULLS` | 
| `LIMIT` |  | 
| `DISTINCT` |  | 
| `HAVING` |  | 
| `USING` |  | 
| `WITH` (espressioni di tabella comuni) |  | 
| `INNER JOIN` | `ON` | 
| `OUTER JOIN` | `LEFT`, `RIGHT`, `FULL`, `ON` | 
| `CROSS JOIN` | `ON` | 
| `UNION` | `ALL` | 
| `INTERSECT` | `ALL` | 
| `EXCEPT` | `ALL` | 
| `OVER` | `RANK ()`, `PARTITION BY` | 
| `FOR UPDATE` |  Specificate i predicati di uguaglianza su tutte le colonne chiave primarie (ad esempio,`WHERE pk = value`). Se si utilizzano predicati di intervallo, `IN``OR`, o altri predicati non di uguaglianza, la query restituisce. `ERROR: locking clause such as FOR UPDATE can be applied only on tables with equality predicates on the key` <br /> Specificare su una singola query da tabella. Se si utilizzano join o più tabelle, la query restituisce`ERROR: locking clause such as FOR UPDATE can be applied on a single table`.  | 

## Data Definition Language (DDL)
<a name="dsql-ddl"></a>

Aurora DSQL supporta i seguenti comandi DDL di PostgreSQL.


| Comando | Clausola primaria | Clausole supportate | 
| --- | --- | --- | 
| `CREATE` | `TABLE` | Per informazioni sulla sintassi supportata del comando `CREATE TABLE`, consulta [`CREATE TABLE`](create-table-syntax-support.md). | 
| `ALTER` | `TABLE` | Per informazioni sulla sintassi supportata del comando `ALTER TABLE`, consulta [`ALTER TABLE`](alter-table-syntax-support.md). | 
| `DROP` | `TABLE` |  | 
| `CREATE` | `[UNIQUE] INDEX ASYNC` | È possibile eseguire questo comando con i seguenti parametri: `ON`, `NULLS FIRST`, `NULLS LAST`.<br />Per informazioni sulla sintassi supportata del comando `CREATE INDEX ASYNC`, consulta [Indici asincroni in Aurora SQL](working-with-create-index-async.md). | 
| `DROP` | `INDEX` |  | 
| `CREATE` | `VIEW` | Per maggiori informazioni sulla sintassi supportata del comando `CREATE VIEW`, consulta [`CREATE VIEW`](create-view.md).  | 
| ALTER | VIEW | Per informazioni sulla sintassi supportata del comando `ALTER VIEW`, consulta [`ALTER VIEW`](alter-view-syntax-support.md). | 
| DROP | VIEW | Per informazioni sulla sintassi supportata del comando DROP VIEW, consulta [`DROP VIEW`](drop-view-overview.md). | 
| `CREATE` | `SEQUENCE` | Per informazioni sulla sintassi supportata del comando `CREATE SEQUENCE`, consulta [`CREATE SEQUENCE`](create-sequence-syntax-support.md). | 
| `ALTER` | `SEQUENCE` | Per informazioni sulla sintassi supportata del comando `ALTER SEQUENCE`, consulta [`ALTER SEQUENCE`](alter-sequence-syntax-support.md). | 
| `DROP` | `SEQUENCE` | Per informazioni sulla sintassi supportata del comando `DROP SEQUENCE`, consulta [`DROP SEQUENCE`](drop-sequence-syntax-support.md). | 
| `CREATE` | `ROLE`, `WITH` |  | 
| `CREATE` | `FUNCTION` | `LANGUAGE SQL` | 
| `CREATE` | `DOMAIN` |  | 

## Data Manipulation Language (DML)
<a name="dsql-dml"></a>

Aurora DSQL supporta i seguenti comandi DML di PostgreSQL.


| Comando | Clausola primaria | Clausole supportate | 
| --- | --- | --- | 
| `INSERT` | `INTO` | `VALUES`<br />`SELECT`<br />`[ON CONFLICT]` | 
| `UPDATE` | `SET` | `WHERE (SELECT)`<br />`FROM, WITH` | 
| DELETE | FROM | USING, WHERE | 

## Data Control Language (DCL)
<a name="dsql-dcl"></a>

Aurora DSQL supporta i seguenti comandi DCL di PostgreSQL.


| Comando | Clausole supportate | 
| --- | --- | 
| `GRANT` | `ON`, `TO` | 
| `REVOKE` | `ON`, `FROM`, `CASCADE`, `RESTRICT` | 

## Transaction Control Language (TCL)
<a name="dsql-tcl"></a>

Aurora DSQL supporta i seguenti comandi TCL di PostgreSQL.


| Comando | Clausole supportate | 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` | 

## Comandi di utilità
<a name="dsql-utility"></a>

Aurora DSQL supporta i seguenti comandi di utilità di PostgreSQL:
+ `EXPLAIN`
+ `ANALYZE` (solo nome della relazione)