쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

쿼리에서 예약어 이스케이프

포커스 모드
쿼리에서 예약어 이스케이프 - Amazon Athena

Athena에서 예약어가 포함된 쿼리를 실행할 때는 쿼리를 특수 문자로 묶어서 이스케이프해야 합니다. 어떤 키워드가 Athena에 예약되어 있는지 확인하려면 이 주제에 있는 목록을 사용하세요.

DDL 문에서 예약어를 이스케이프하려면 해당 문을 악센트 부호(`)로 묶습니다. 에 대한 SQL SELECT 문과 쿼리에서 예약어를 이스케이프하려면 예약어를 큰 따옴표('')로 묶습니다.

DDL 문에서 이스케이프할 예약어

Athena는 DDL 문에서 다음과 같은 예약어 목록을 사용합니다. 예약어를 이스케이프하지 않고 사용할 경우, Athena에 오류가 표시됩니다. 예약어를 이스케이프하려면 악센트 부호(`)로 묶습니다.

DDL 예약어를 악센트 부호(`)로 묶지 않고는 DDL 문에 식별자 이름으로 사용할 수 없습니다.

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

SQL SELECT 문에서 이스케이프할 예약어

Athena는 뷰에 대한 SQL SELECT 문 및 쿼리에서 다음과 같은 예약어 목록을 사용합니다.

이 키워드를 식별자로 사용할 경우 쿼리 문에서 큰따옴표(")를 사용하여 묶어야 합니다.

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

예약어가 포함된 쿼리의 예

다음 예제의 쿼리는 백틱(`)을 사용하여 테이블 이름과 열 이름 중 하나로 사용되는 DDL 관련 예약어 partitiondate를 이스케이프합니다.

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

다음 예제 쿼리는 ALTER TABLE ADD PARTITIONALTER TABLE DROP PARTITION 문에 DDL 관련 예약어가 있는 열 이름을 포함합니다. DDL 예약어는 백틱(`)으로 묶여 있습니다.

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

다음 예제 쿼리는 SELECT 문에 예약어(end)를 식별자로 포함합니다. 키워드는 큰따옴표로 이스케이프되어 있습니다.

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

다음 예제 쿼리는 SELECT 문에 예약어(first)를 포함합니다. 키워드는 큰따옴표로 이스케이프되어 있습니다.

SELECT "itemId"."first" FROM testTable LIMIT 10;
프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.