-- keywords
* EXCEPT;

* REPLACE;

ALL;

AND;

ANY;

ARRAY;

AS;

ASC;

ASSERT_ROWS_MODIFIED;

AT;

BETWEEN;

BY;

CAST;

COLLATE;

CONTAINS;

CREATE;

CROSS;

CUBE;

CURRENT;

DECLARE;

DEFAULT;

DEFINE;

DESC;

DISTINCT;

ENUM;

ESCAPE;

EXCEPT;

EXCLUDE;

EXISTS;

EXTRACT;

FALSE;

FETCH;

FOLLOWING;

FOR;

FROM;

FULL;

GROUP;

GROUPING;

GROUPS;

HASH;

HAVING;

IF();

IGNORE;

IN;

INNER;

INTERSECT;

INTERVAL;

INTO;

IS;

JOIN;

LATERAL;

LEFT;

LIKE;

LIMIT;

LOOKUP;

MERGE;

NATURAL;

NEW;

NO;

NOT;

NULL;

NULLS;

OF;

ON;

OR;

ORDER;

OUTER;

OVER;

PARTITION;

PRECEDING;

PROTO;

RAISE USING MESSAGE;

RAISE;

RANGE;

RECURSIVE;

REPLACE;

RESPECT;

RIGHT;

ROLLUP;

ROWS;

SELECT;

SET;

SOME;

STRUCT;

TABLESAMPLE;

TO;

TREAT;

TRUE;

UNBOUNDED;

UNION;

UNNEST;

USING;

WHERE;

WINDOW;

WITH;

WITHIN;

-- newline keywords
CREATE OR REPLACE;

CREATE;

RETURNS;

LANGUAGE;

AND;

BETWEEN;

OR;

XOR;

-- scripting keywords
CREATE OR REPLACE PROCEDURE
BEGIN
END;

CREATE PROCEDURE IF NOT EXISTS
BEGIN
END;

CREATE PROCEDURE
BEGIN
EXCEPTION WHEN ERROR THEN
END;

IF
THEN
ELSEIF
THEN
ELSE
END IF;

WHILE
DO
END WHILE;

LOOP
END LOOP;

CASE
  WHEN
    THEN
  ELSE
END;

BEGIN TRANSACTION;

COMMIT TRANSACTION;

COMMIT;

ROLLBACK TRANSACTION;

ROLLBACK;

-- top level keywords
ALTER TABLE IF EXISTS;

ALTER TABLE;

CLUSTER BY;

CREATE OR REPLACE TABLE;

CREATE OR REPLACE VIEW;

CREATE TABLE IF NOT EXISTS;

CREATE VIEW IF NOT EXISTS;

CREATE TEMP TABLE;

CREATE TABLE;

CREATE VIEW;

DROP TABLE;

DROP VIEW;

OPTIONS;

DELETE FROM;

DELETE;

INSERT INTO;

INSERT;

MERGE INTO;

MERGE;

UPDATE;

BREAK;

CONTINUE;

ITERATE;

LEAVE;

CROSS JOIN;

EXCEPT DISTINCT;

INTERSECT DISTINCT;

FROM;

FULL JOIN;

FULL OUTER JOIN;

GROUP BY;

HAVING;

INNER JOIN;

INTERSECT;

JOIN;

LEFT JOIN;

LEFT OUTER JOIN;

LIMIT;

ON;

ORDER BY;

OUTER JOIN;

PARTITION BY;

RIGHT JOIN;

RIGHT OUTER JOIN;

ROLLUP;

ROWS BETWEEN;

ROWS;

SELECT AS STRUCT;

SELECT AS VALUE;

SELECT;

UNION ALL;

UNION DISTINCT;

UNION;

USING;

VALUES;

WHERE;

WITH;

WINDOW;
