Cette rubrique compare la prise en charge des instructions SQL dans MaxCompute, Hive, MySQL, Oracle et SQL Server. Utilisez-la pour identifier les écarts de compatibilité avant de migrer vos charges de travail SQL vers MaxCompute.
Prise en charge des instructions DDL
| Instruction | MaxCompute | Hive | MySQL | Oracle | SQL Server |
|---|---|---|---|---|---|
| CREATE TABLE-PRIMARY KEY | Y | N | Y | Y | Y |
| CREATE TABLE-NOT NULL | Y | N | Y | Y | Y |
| CREATE TABLE-CLUSTER BY | Y | Y | N | Y | Y |
| CREATE TABLE-EXTERNAL TABLE | Y (OSS, OTS, TDDL) | Y | N | Y | N |
| CREATE TABLE-TEMPORARY TABLE | N | Y | Y | Y | Y (with the # prefix) |
| INDEX-CREATE INDEX | N | Y | Y | Y | Y |
| VIRTUAL COLUMN | N | N | N | Y | Y |
Prise en charge des instructions DML
| Instruction | MaxCompute | Hive | MySQL | Oracle | SQL Server |
|---|---|---|---|---|---|
| CTE | Y | Y | Y | Y | Y |
| SELECT-recursive CTE | N | N | Y | Y | Y |
| SELECT-GROUP BY ROLL UP | Y | Y | Y | Y | Y |
| SELECT-GROUP BY CUBE | Y | Y | N | Y | Y |
| SELECT-GROUPING SET | Y | Y | N | Y | Y |
| SELECT-IMPLICIT JOIN | Y | Y | N | Y | Y |
| SELECT-PIVOT | N | N | N | Y | Y |
| SEMI JOIN | Y | Y | Y | N | N |
| SELECT TRANSFORM | Y | Y | N | N | N |
| SELECT-correlated subquery | Y | Y | Y | Y | Y |
| ORDER BY NULLS FIRST/LAST | Y | Y | Y | Y | Y |
| LATERAL VIEW | Y | Y | N | Y | Y (CROSS APPLY keyword) |
| SET OPERATOR-UNION (distinct) | Y | Y | Y | Y | Y |
| SET OPERATOR-INTERSECT | Y | N | N | Y | Y |
| SET OPERATOR-MINUS/EXCEPT | Y | N | N | Y | Y (keyword EXCEPT) |
| INSERT INTO ... VALUES | Y | Y | Y | Y | Y |
| INSERT INTO (ColumnList) | Y | Y | Y | Y | Y |
| UPDATE ... WHERE | Y | Y | Y | Y | Y |
| DELETE ... WHERE | Y | Y | Y | Y | Y |
| MERGE INTO | Y | Y | N | Y | Y |
| ANALYTIC-reusable WINDOWING CLAUSE | Y | Y | N | N | N |
| ANALYTIC-CURRENT ROW | Y | Y | N | Y | Y |
| ANALYTIC-UNBOUNDED | Y | N | Y | Y | Y |
| ANALYTIC-RANGE ... | N | Y | N | Y | Y |
| WHILE DO | N | N | Y | Y | Y |
Prise en charge des instructions de script
| Instruction | MaxCompute | Hive | MySQL | Oracle | SQL Server |
|---|---|---|---|---|---|
| TABLE VARIABLE | Y | Y | Y | Y | Y |
| SCALER VARIABLE | Y | Y | Y | Y | Y |
| ERROR HANDLING-RAISE ERROR | N | N | Y | Y | Y |
| ERROR HANDLING-TRY CATCH | N | N | N | Y | Y |
| FLOW CONTROL-LOOP | N | N | Y | Y | Y |
| CURSOR | N | N | Y | Y | Y |