Melarikan diri dari kata kunci yang dicadangkan dalam kueri - Amazon Athena

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Melarikan diri dari kata kunci yang dicadangkan dalam kueri

Saat Anda menjalankan kueri di Athena yang mencakup kata kunci cadangan, Anda harus melepaskannya dengan menyertakan mereka dalam karakter khusus. Gunakan daftar dalam topik ini untuk memeriksa kata kunci mana yang dicadangkan di Athena.

Untuk menghindari kata kunci yang dicadangkan dalam DDL pernyataan, lampirkan dalam backticks (`). Untuk menghindari kata kunci yang dicadangkan dalam SQL SELECT pernyataan dan kueri pada tampilan, lampirkan dalam tanda kutip ganda (“).

Kata kunci yang dicadangkan untuk melarikan diri dalam DDL pernyataan

Athena menggunakan daftar kata kunci cadangan berikut dalam pernyataannyaDDL. Jika Anda menggunakan kata kunci cadangan tanpa melepaskannya, Athena akan mengeluarkan kesalahan. Untuk melepaskan kata kunci, sertakan kata kunci dalam backtick (`).

Anda tidak dapat menggunakan kata kunci DDL cadangan sebagai nama pengenal dalam DDL pernyataan tanpa melampirkannya dalam backticks (`).

ALL, ALTER, AND, ARRAY, AS, AUTHORIZATION, BETWEEN, BIGINT, BINARY, BOOLEAN, BOTH, BY, CASE, CASHE, CAST, CHAR, COLUMN, CONF, CONSTRAINT, COMMIT, CREATE, CROSS, CUBE, CURRENT, CURRENT_DATE, CURRENT_TIMESTAMP, CURSOR, DATABASE, DATE, DAYOFWEEK, DECIMAL, DELETE, DESCRIBE, DISTINCT, DIV, DOUBLE, DROP, ELSE, END, EXCHANGE, EXISTS, EXTENDED, EXTERNAL, EXTRACT, FALSE, FETCH, FLOAT, FLOOR, FOLLOWING, FOR, FOREIGN, FROM, FULL, FUNCTION, GRANT, GROUP, GROUPING, HAVING, IF, IMPORT, IN, INNER, INSERT, INT, INTEGER, INTERSECT, INTERVAL, INTO, IS, JOIN, LATERAL, LEFT, LESS, LIKE, LOCAL, MACRO, MAP, MORE, NONE, NOT, NULL, NUMERIC, OF, ON, ONLY, OR, ORDER, OUT, OUTER, OVER, PARTIALSCAN, PARTITION, PERCENT, PRECEDING, PRECISION, PRESERVE, PRIMARY, PROCEDURE, RANGE, READS, REDUCE, REGEXP, REFERENCES, REVOKE, RIGHT, RLIKE, ROLLBACK, ROLLUP, ROW, ROWS, SELECT, SET, SMALLINT, START,TABLE, TABLESAMPLE, THEN, TIME, TIMESTAMP, TO, TRANSFORM, TRIGGER, TRUE, TRUNCATE, UNBOUNDED,UNION, UNIQUEJOIN, UPDATE, USER, USING, UTC_TIMESTAMP, VALUES, VARCHAR, VIEWS, WHEN, WHERE, WINDOW, WITH

Kata kunci yang dicadangkan untuk melarikan diri dalam SQL SELECT pernyataan

Athena menggunakan daftar kata kunci cadangan berikut dalam SQL SELECT pernyataan dan kueri tentang tampilan.

Jika Anda menggunakan kata kunci ini sebagai pengidentifikasi, Anda harus menyertakan mereka dalam tanda kutip ganda (“) dalam pernyataan kueri Anda.

ALTER, AND, AS, BETWEEN, BY, CASE, CAST, CONSTRAINT, CREATE, CROSS, CUBE, CURRENT_CATALOG, CURRENT_DATE, CURRENT_PATH, CURRENT_SCHEMA, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_USER, DEALLOCATE, DELETE, DESCRIBE, DISTINCT, DROP, ELSE, END, ESCAPE, EXCEPT, EXECUTE, EXISTS, EXTRACT, FALSE, FIRST, FOR, FROM, FULL, GROUP, GROUPING, HAVING, IN, INNER, INSERT, INTERSECT, INTO, IS, JOIN, JSON_ARRAY, JSON_EXISTS, JSON_OBJECT, JSON_QUERY, JSON_TABLE, JSON_VALUE, LAST, LEFT, LIKE, LISTAGG, LOCALTIME, LOCALTIMESTAMP, NATURAL, NORMALIZE, NOT, NULL, OF, ON, OR, ORDER, OUTER, PREPARE, RECURSIVE, RIGHT, ROLLUP, SELECT, SKIP, TABLE, THEN, TRIM, TRUE, UESCAPE, UNION, UNNEST, USING, VALUES, WHEN, WHERE, WITH

Contoh kueri dengan kata-kata yang dicadangkan

Kueri dalam contoh berikut menggunakan backticks (`) untuk menghindari partisi kata kunci cadangan DDL terkait dan tanggal yang digunakan untuk nama tabel dan salah satu nama kolom:

CREATE EXTERNAL TABLE `partition` ( `date` INT, col2 STRING ) PARTITIONED BY (year STRING) STORED AS TEXTFILE LOCATION 's3://amzn-s3-demo-bucket/test_examples/';

Contoh kueri berikut mencakup nama kolom yang berisi kata kunci cadangan DDL terkait dalam ALTER TABLE ADD PARTITION dan ALTER TABLE DROP PARTITION pernyataan. Kata kunci yang DDL dicadangkan terlampir dalam backticks (`):

ALTER TABLE test_table ADD PARTITION (`date` = '2018-05-14')
ALTER TABLE test_table DROP PARTITION (`partition` = 'test_partition_value')

Contoh kueri berikut mencakup kata kunci cadangan (akhir) sebagai pengidentifikasi dalam SELECT. Kata kunci dilepaskan dalam tanda kutip ganda:

SELECT * FROM TestTable WHERE "end" != nil;

Contoh kueri berikut mencakup kata kunci cadangan (pertama) dalam SELECT. Kata kunci dilepaskan dalam tanda kutip ganda:

SELECT "itemId"."first" FROM testTable LIMIT 10;