附录 C. SQL 关键字
表 C.1列出了在 SQL 标准以及 PostgreSQL 8.3.23 中被视为关键字的所有词元。背景信息可参见第 4.1.1 节。
SQL 区分保留关键字和非保留关键字。根据标准,保留关键字才是真正的关键字,它们绝不允许作为标识符使用。非保留关键字只在特定上下文中具有特殊含义,在其他上下文中则可以作为标识符使用。大多数非保留关键字实际上是 SQL 规定的内置表和内置函数名称。非保留关键字这一概念,本质上只是为了声明某个词在某些上下文中附带了预定义含义。
在PostgreSQL解析器中,情况要更复杂一些。这里的词元分属若干不同类别,从绝不能用作标识符的词元,到在解析器中完全没有特殊地位、只是被当作普通标识符处理的词元都有。(后一类通常就是 SQL 规定的函数名。)即使是保留关键字,在PostgreSQL中也不是绝对保留的,它们仍然可以用作列标签(例如SELECT 55 AS CHECK,尽管CHECK是一个保留关键字)。
在表 C.1中针对PostgreSQL的那一列里,我们把解析器明确识别、但又允许作为列名或表名的那些关键字归类为“非保留”。某些原本属于非保留的关键字不能用作函数名或数据类型名,因此会另外加以标记。(这类词大多表示具有特殊语法的内置函数或数据类型。函数或类型本身仍然可用,但用户不能重新定义它们。)不允许作为列名或表名的词元则标为“保留”。有些保留关键字仍允许作为函数名或数据类型名,这一点也会在表中标出。如果没有这样的标记,保留关键字就只允许作为“AS”列标签名使用。
一般来说,如果你在某条命令中把这里列出的关键字当作标识符使用,并因此遇到意外的解析器错误,应尝试为该标识符加上引号,看看问题是否消失。
在研读表 C.1之前,有一点非常重要:某个关键字在PostgreSQL中不被保留,并不意味着与该词相关的特性尚未实现;反过来,某个关键字的存在也不意味着相应特性一定存在。
表 C.1. SQL 关键字
| Key Word | PostgreSQL | SQL:2003 | SQL:1999 | SQL-92 |
|---|---|---|---|---|
A | non-reserved | |||
ABORT | non-reserved | |||
ABS | reserved | non-reserved | ||
ABSOLUTE | non-reserved | non-reserved | reserved | reserved |
ACCESS | non-reserved | |||
ACTION | non-reserved | non-reserved | reserved | reserved |
ADA | non-reserved | non-reserved | non-reserved | |
ADD | non-reserved | non-reserved | reserved | reserved |
ADMIN | non-reserved | non-reserved | reserved | |
AFTER | non-reserved | non-reserved | reserved | |
AGGREGATE | non-reserved | reserved | ||
ALIAS | reserved | |||
ALL | reserved | reserved | reserved | reserved |
ALLOCATE | reserved | reserved | reserved | |
ALSO | non-reserved | |||
ALTER | non-reserved | reserved | reserved | reserved |
ALWAYS | non-reserved | non-reserved | ||
ANALYSE | reserved | |||
ANALYZE | reserved | |||
AND | reserved | reserved | reserved | reserved |
ANY | reserved | reserved | reserved | reserved |
ARE | reserved | reserved | reserved | |
ARRAY | reserved | reserved | reserved | |
AS | reserved | reserved | reserved | reserved |
ASC | reserved | non-reserved | reserved | reserved |
ASENSITIVE | reserved | non-reserved | ||
ASSERTION | non-reserved | non-reserved | reserved | reserved |
ASSIGNMENT | non-reserved | non-reserved | non-reserved | |
ASYMMETRIC | reserved | reserved | non-reserved | |
AT | non-reserved | reserved | reserved | reserved |
ATOMIC | reserved | non-reserved | ||
ATTRIBUTE | non-reserved | |||
ATTRIBUTES | non-reserved | |||
AUTHORIZATION | reserved (can be function or type) | reserved | reserved | reserved |
AVG | reserved | non-reserved | reserved | |
BACKWARD | non-reserved | |||
BASE64 | non-reserved | |||
BEFORE | non-reserved | non-reserved | reserved | |
BEGIN | non-reserved | reserved | reserved | reserved |
BERNOULLI | non-reserved | |||
BETWEEN | reserved (can be function or type) | reserved | non-reserved | reserved |
BIGINT | non-reserved (cannot be function or type) | reserved | ||
BINARY | reserved (can be function or type) | reserved | reserved | |
BIT | non-reserved (cannot be function or type) | reserved | reserved | |
BITVAR | non-reserved | |||
BIT_LENGTH | non-reserved | reserved | ||
BLOB | reserved | reserved | ||
BOOLEAN | non-reserved (cannot be function or type) | reserved | reserved | |
BOTH | reserved | reserved | reserved | reserved |
BREADTH | non-reserved | reserved | ||
BY | non-reserved | reserved | reserved | reserved |
C | non-reserved | non-reserved | non-reserved | |
CACHE | non-reserved | |||
CALL | reserved | reserved | ||
CALLED | non-reserved | reserved | non-reserved | |
CARDINALITY | reserved | non-reserved | ||
CASCADE | non-reserved | non-reserved | reserved | reserved |
CASCADED | non-reserved | reserved | reserved | reserved |
CASE | reserved | reserved | reserved | reserved |
CAST | reserved | reserved | reserved | reserved |
CATALOG | non-reserved | reserved | reserved | |
CATALOG_NAME | non-reserved | non-reserved | non-reserved | |
CEIL | reserved | |||
CEILING | reserved | |||
CHAIN | non-reserved | non-reserved | non-reserved | |
CHAR | non-reserved (cannot be function or type) | reserved | reserved | reserved |
CHARACTER | non-reserved (cannot be function or type) | reserved | reserved | reserved |
CHARACTERISTICS | non-reserved | non-reserved | ||
CHARACTERS | non-reserved | |||
CHARACTER_LENGTH | reserved | non-reserved | reserved | |
CHARACTER_SET_CATALOG | non-reserved | non-reserved | non-reserved | |
CHARACTER_SET_NAME | non-reserved | non-reserved | non-reserved | |
CHARACTER_SET_SCHEMA | non-reserved | non-reserved | non-reserved | |
CHAR_LENGTH | reserved | non-reserved | reserved | |
CHECK | reserved | reserved | reserved | reserved |
CHECKED | non-reserved | |||
CHECKPOINT | non-reserved | |||
CLASS | non-reserved | reserved | ||
CLASS_ORIGIN | non-reserved | non-reserved | non-reserved | |
CLOB | reserved | reserved | ||
CLOSE | non-reserved | reserved | reserved | reserved |
CLUSTER | non-reserved | |||
COALESCE | non-reserved (cannot be function or type) | reserved | non-reserved | reserved |
COBOL | non-reserved | non-reserved | non-reserved | |
COLLATE | reserved | reserved | reserved | reserved |
COLLATION | non-reserved | reserved | reserved | |
COLLATION_CATALOG | non-reserved | non-reserved | non-reserved | |
COLLATION_NAME | non-reserved | non-reserved | non-reserved | |
COLLATION_SCHEMA | non-reserved | non-reserved | non-reserved | |
COLLECT | reserved | |||
COLUMN | reserved | reserved | reserved | reserved |
COLUMN_NAME | non-reserved | non-reserved | non-reserved | |
COMMAND_FUNCTION | non-reserved | non-reserved | non-reserved | |
COMMAND_FUNCTION_CODE | non-reserved | non-reserved | ||
COMMENT | non-reserved | |||
COMMIT | non-reserved | reserved | reserved | reserved |
COMMITTED | non-reserved | non-reserved | non-reserved | non-reserved |
COMPLETION | reserved | |||
CONCURRENTLY | non-reserved | |||
CONDITION | reserved | |||
CONDITION_NUMBER | non-reserved | non-reserved | non-reserved | |
CONFIGURATION | non-reserved | |||
CONNECT | reserved | reserved | reserved | |
CONNECTION | non-reserved | non-reserved | reserved | reserved |
CONNECTION_NAME | non-reserved | non-reserved | non-reserved | |
CONSTRAINT | reserved | reserved | reserved | reserved |
CONSTRAINTS | non-reserved | non-reserved | reserved | reserved |
CONSTRAINT_CATALOG | non-reserved | non-reserved | non-reserved | |
CONSTRAINT_NAME | non-reserved | non-reserved | non-reserved | |
CONSTRAINT_SCHEMA | non-reserved | non-reserved | non-reserved | |
CONSTRUCTOR | non-reserved | reserved | ||
CONTAINS | non-reserved | non-reserved | ||
CONTENT | non-reserved | non-reserved | ||
CONTINUE | non-reserved | reserved | reserved | |
CONVERSION | non-reserved | |||
CONVERT | reserved | non-reserved | reserved | |
COPY | non-reserved | |||
CORR | reserved | |||
CORRESPONDING | reserved | reserved | reserved | |
COST | non-reserved | |||
COUNT | reserved | non-reserved | reserved | |
COVAR_POP | reserved | |||
COVAR_SAMP | reserved | |||
CREATE | reserved | reserved | reserved | reserved |
CREATEDB | non-reserved | |||
CREATEROLE | non-reserved | |||
CREATEUSER | non-reserved | |||
CROSS | reserved (can be function or type) | reserved | reserved | reserved |
CSV | non-reserved | |||
CUBE | reserved | reserved | ||
CUME_DIST | reserved | |||
CURRENT | non-reserved | reserved | reserved | reserved |
CURRENT_DATE | reserved | reserved | reserved | reserved |
CURRENT_DEFAULT_TRANSFORM_GROUP | reserved | |||
CURRENT_PATH | reserved | reserved | ||
CURRENT_ROLE | reserved | reserved | reserved | |
CURRENT_TIME | reserved | reserved | reserved | reserved |
CURRENT_TIMESTAMP | reserved | reserved | reserved | reserved |
CURRENT_TRANSFORM_GROUP_FOR_TYPE | reserved | |||
CURRENT_USER | reserved | reserved | reserved | reserved |
CURSOR | non-reserved | reserved | reserved | reserved |
CURSOR_NAME | non-reserved | non-reserved | non-reserved | |
CYCLE | non-reserved | reserved | reserved | |
DATA | non-reserved | reserved | non-reserved | |
DATABASE | non-reserved | |||
DATE | reserved | reserved | reserved | |
DATETIME_INTERVAL_CODE | non-reserved | non-reserved | non-reserved | |
DATETIME_INTERVAL_PRECISION | non-reserved | non-reserved | non-reserved | |
DAY | non-reserved | reserved | reserved | reserved |
DEALLOCATE | non-reserved | reserved | reserved | reserved |
DEC | non-reserved (cannot be function or type) | reserved | reserved | reserved |
DECIMAL | non-reserved (cannot be function or type) | reserved | reserved | reserved |
DECLARE | non-reserved | reserved | reserved | reserved |
DEFAULT | reserved | reserved | reserved | reserved |
DEFAULTS | non-reserved | non-reserved | ||
DEFERRABLE | reserved | non-reserved | reserved | reserved |
DEFERRED | non-reserved | non-reserved | reserved | reserved |
DEFINED | non-reserved | non-reserved | ||
DEFINER | non-reserved | non-reserved | non-reserved | |
DEGREE | non-reserved | |||
DELETE | non-reserved | reserved | reserved | reserved |
DELIMITER | non-reserved | |||
DELIMITERS | non-reserved | |||
DENSE_RANK | reserved | |||
DEPTH | non-reserved | reserved | ||
DEREF | reserved | reserved | ||
DERIVED | non-reserved | |||
DESC | reserved | non-reserved | reserved | reserved |
DESCRIBE | reserved | reserved | reserved | |
DESCRIPTOR | non-reserved | reserved | reserved | |
DESTROY | reserved | |||
DESTRUCTOR | reserved | |||
DETERMINISTIC | reserved | reserved | ||
DIAGNOSTICS | non-reserved | reserved | reserved | |
DICTIONARY | non-reserved | reserved | ||
DISABLE | non-reserved | |||
DISCARD | non-reserved | |||
DISCONNECT | reserved | reserved | reserved | |
DISPATCH | non-reserved | non-reserved | ||
DISTINCT | reserved | reserved | reserved | reserved |
DO | reserved | |||
DOCUMENT | non-reserved | non-reserved | ||
DOMAIN | non-reserved | non-reserved | reserved | reserved |
DOUBLE | non-reserved | reserved | reserved | reserved |
DROP | non-reserved | reserved | reserved | reserved |
DYNAMIC | reserved | reserved | ||
DYNAMIC_FUNCTION | non-reserved | non-reserved | non-reserved | |
DYNAMIC_FUNCTION_CODE | non-reserved | non-reserved | ||
EACH | non-reserved | reserved | reserved | |
ELEMENT | reserved | |||
ELSE | reserved | reserved | reserved | reserved |
ENABLE | non-reserved | |||
ENCODING | non-reserved | |||
ENCRYPTED | non-reserved | |||
END | reserved | reserved | reserved | reserved |
END-EXEC | reserved | reserved | reserved | |
ENUM | non-reserved | |||
EQUALS | non-reserved | reserved | ||
ESCAPE | non-reserved | reserved | reserved | reserved |
EVERY | reserved | reserved | ||
EXCEPT | reserved | reserved | reserved | reserved |
EXCEPTION | non-reserved | reserved | reserved | |
EXCLUDE | non-reserved | |||
EXCLUDING | non-reserved | non-reserved | ||
EXCLUSIVE | non-reserved | |||
EXEC | reserved | reserved | reserved | |
EXECUTE | non-reserved | reserved | reserved | reserved |
EXISTING | non-reserved | |||
EXISTS | non-reserved (cannot be function or type) | reserved | non-reserved | reserved |
EXP | reserved | |||
EXPLAIN | non-reserved | |||
EXTERNAL | non-reserved | reserved | reserved | reserved |
EXTRACT | non-reserved (cannot be function or type) | reserved | non-reserved | reserved |
FALSE | reserved | reserved | reserved | reserved |
FAMILY | non-reserved | |||
FETCH | non-reserved | reserved | reserved | reserved |
FILTER | reserved | |||
FINAL | non-reserved | non-reserved | ||
FIRST | non-reserved | non-reserved | reserved | reserved |
FLOAT | non-reserved (cannot be function or type) | reserved | reserved | reserved |
FLOOR | reserved | |||
FOLLOWING | non-reserved | |||
FOR | reserved | reserved | reserved | reserved |
FORCE | non-reserved | |||
FOREIGN | reserved | reserved | reserved | reserved |
FORTRAN | non-reserved | non-reserved | non-reserved | |
FORWARD | non-reserved | |||
FOUND | non-reserved | reserved | reserved | |
FREE | reserved | reserved | ||
FREEZE | reserved (can be function or type) | |||
FROM | reserved | reserved | reserved | reserved |
FULL | reserved (can be function or type) | reserved | reserved | reserved |
FUNCTION | non-reserved | reserved | reserved | |
FUSION | reserved | |||
G | non-reserved | non-reserved | ||
GENERAL | non-reserved | reserved | ||
GENERATED | non-reserved | non-reserved | ||
GET | reserved | reserved | reserved | |
GLOBAL | non-reserved | reserved | reserved | reserved |
GO | non-reserved | reserved | reserved | |
GOTO | non-reserved | reserved | reserved | |
GRANT | reserved | reserved | reserved | reserved |
GRANTED | non-reserved | non-reserved | non-reserved | |
GREATEST | non-reserved (cannot be function or type) | |||
GROUP | reserved | reserved | reserved | reserved |
GROUPING | reserved | reserved | ||
HANDLER | non-reserved | |||
HAVING | reserved | reserved | reserved | reserved |
HEADER | non-reserved | |||
HEX | non-reserved | |||
HIERARCHY | non-reserved | non-reserved | ||
HOLD | non-reserved | reserved | non-reserved | |
HOST | reserved | |||
HOUR | non-reserved | reserved | reserved | reserved |
IDENTITY | reserved | reserved | reserved | |
IF | non-reserved | |||
IGNORE | reserved | |||
ILIKE | reserved (can be function or type) | |||
IMMEDIATE | non-reserved | non-reserved | reserved | reserved |
IMMUTABLE | non-reserved | |||
IMPLEMENTATION | non-reserved | non-reserved | ||
IMPLICIT | non-reserved | |||
IN | reserved | reserved | reserved | reserved |
INCLUDING | non-reserved | non-reserved | ||
INCREMENT | non-reserved | non-reserved | ||
INDEX | non-reserved | |||
INDEXES | non-reserved | |||
INDICATOR | reserved | reserved | reserved | |
INFIX | non-reserved | |||
INHERIT | non-reserved | |||
INHERITS | non-reserved | |||
INITIALIZE | reserved | |||
INITIALLY | reserved | non-reserved | reserved | reserved |
INNER | reserved (can be function or type) | reserved | reserved | reserved |
INOUT | non-reserved (cannot be function or type) | reserved | reserved | |
INPUT | non-reserved | non-reserved | reserved | reserved |
INSENSITIVE | non-reserved | reserved | non-reserved | reserved |
INSERT | non-reserved | reserved | reserved | reserved |
INSTANCE | non-reserved | non-reserved | ||
INSTANTIABLE | non-reserved | non-reserved | ||
INSTEAD | non-reserved | |||
INT | non-reserved (cannot be function or type) | reserved | reserved | reserved |
INTEGER | non-reserved (cannot be function or type) | reserved | reserved | reserved |
INTERSECT | reserved | reserved | reserved | reserved |
INTERSECTION | reserved | |||
INTERVAL | non-reserved (cannot be function or type) | reserved | reserved | reserved |
INTO | reserved | reserved | reserved | reserved |
INVOKER | non-reserved | non-reserved | non-reserved | |
IS | reserved (can be function or type) | reserved | reserved | reserved |
ISNULL | reserved (can be function or type) | |||
ISOLATION | non-reserved | non-reserved | reserved | reserved |
ITERATE | reserved | |||
JOIN | reserved (can be function or type) | reserved | reserved | reserved |
K | non-reserved | non-reserved | ||
KEY | non-reserved | non-reserved | reserved | reserved |
KEY_MEMBER | non-reserved | non-reserved | ||
KEY_TYPE | non-reserved | non-reserved | ||
LANCOMPILER | non-reserved | |||
LANGUAGE | non-reserved | reserved | reserved | reserved |
LARGE | non-reserved | reserved | reserved | |
LAST | non-reserved | non-reserved | reserved | reserved |
LATERAL | reserved | reserved | ||
LEADING | reserved | reserved | reserved | reserved |
LEAST | non-reserved (cannot be function or type) | |||
LEFT | reserved (can be function or type) | reserved | reserved | reserved |
LENGTH | non-reserved | non-reserved | non-reserved | |
LESS | reserved | |||
LEVEL | non-reserved | non-reserved | reserved | reserved |
LIKE | reserved (can be function or type) | reserved | reserved | reserved |
LIMIT | reserved | reserved | ||
LISTEN | non-reserved | |||
LN | reserved | |||
LOAD | non-reserved | |||
LOCAL | non-reserved | reserved | reserved | reserved |
LOCALTIME | reserved | reserved | reserved | |
LOCALTIMESTAMP | reserved | reserved | reserved | |
LOCATION | non-reserved | |||
LOCATOR | non-reserved | reserved | ||
LOCK | non-reserved | |||
LOGIN | non-reserved | |||
LOWER | reserved | non-reserved | reserved | |
M | non-reserved | non-reserved | ||
MAP | non-reserved | reserved | ||
MAPPING | non-reserved | |||
MATCH | non-reserved | reserved | reserved | reserved |
MATCHED | non-reserved | |||
MAX | reserved | non-reserved | reserved | |
MAXVALUE | non-reserved | non-reserved | ||
MEMBER | reserved | |||
MERGE | reserved | |||
MESSAGE_LENGTH | non-reserved | non-reserved | non-reserved | |
MESSAGE_OCTET_LENGTH | non-reserved | non-reserved | non-reserved | |
MESSAGE_TEXT | non-reserved | non-reserved | non-reserved | |
METHOD | reserved | non-reserved | ||
MIN | reserved | non-reserved | reserved | |
MINUTE | non-reserved | reserved | reserved | reserved |
MINVALUE | non-reserved | non-reserved | ||
MOD | reserved | non-reserved | ||
MODE | non-reserved | |||
MODIFIES | reserved | reserved | ||
MODIFY | reserved | |||
MODULE | reserved | reserved | reserved | |
MONTH | non-reserved | reserved | reserved | reserved |
MORE | non-reserved | non-reserved | non-reserved | |
MOVE | non-reserved | |||
MULTISET | reserved | |||
MUMPS | non-reserved | non-reserved | non-reserved | |
NAME | non-reserved | non-reserved | non-reserved | non-reserved |
NAMES | non-reserved | non-reserved | reserved | reserved |
NATIONAL | non-reserved (cannot be function or type) | reserved | reserved | reserved |
NATURAL | reserved (can be function or type) | reserved | reserved | reserved |
NCHAR | non-reserved (cannot be function or type) | reserved | reserved | reserved |
NCLOB | reserved | reserved | ||
NESTING | non-reserved | |||
NEW | reserved | reserved | reserved | |
NEXT | non-reserved | non-reserved | reserved | reserved |
NO | non-reserved | reserved | reserved | reserved |
NOCREATEDB | non-reserved | |||
NOCREATEROLE | non-reserved | |||
NOCREATEUSER | non-reserved | |||
NOINHERIT | non-reserved | |||
NOLOGIN | non-reserved | |||
NONE | non-reserved (cannot be function or type) | reserved | reserved | |
NORMALIZE | reserved | |||
NORMALIZED | non-reserved | |||
NOSUPERUSER | non-reserved | |||
NOT | reserved | reserved | reserved | reserved |
NOTHING | non-reserved | |||
NOTIFY | non-reserved | |||
NOTNULL | reserved (can be function or type) | |||
NOWAIT | non-reserved | |||
NULL | reserved | reserved | reserved | reserved |
NULLABLE | non-reserved | non-reserved | non-reserved | |
NULLIF | non-reserved (cannot be function or type) | reserved | non-reserved | reserved |
NULLS | non-reserved | non-reserved | ||
NUMBER | non-reserved | non-reserved | non-reserved | |
NUMERIC | non-reserved (cannot be function or type) | reserved | reserved | reserved |
OBJECT | non-reserved | non-reserved | reserved | |
OCTETS | non-reserved | |||
OCTET_LENGTH | reserved | non-reserved | reserved | |
OF | non-reserved | reserved | reserved | reserved |
OFF | reserved | reserved | ||
OFFSET | reserved | |||
OIDS | non-reserved | |||
OLD | reserved | reserved | reserved | |
ON | reserved | reserved | reserved | reserved |
ONLY | reserved | reserved | reserved | reserved |
OPEN | reserved | reserved | reserved | |
OPERATION | reserved | |||
OPERATOR | non-reserved | |||
OPTION | non-reserved | non-reserved | reserved | reserved |
OPTIONS | non-reserved | non-reserved | ||
OR | reserved | reserved | reserved | reserved |
ORDER | reserved | reserved | reserved | reserved |
ORDERING | non-reserved | |||
ORDINALITY | non-reserved | reserved | ||
OTHERS | non-reserved | |||
OUT | non-reserved (cannot be function or type) | reserved | reserved | |
OUTER | reserved (can be function or type) | reserved | reserved | reserved |
OUTPUT | non-reserved | reserved | reserved | |
OVER | reserved | |||
OVERLAPS | reserved (can be function or type) | reserved | non-reserved | reserved |
OVERLAY | non-reserved (cannot be function or type) | reserved | non-reserved | |
OVERRIDING | non-reserved | non-reserved | ||
OWNED | non-reserved | |||
OWNER | non-reserved | |||
PAD | non-reserved | reserved | reserved | |
PARAMETER | reserved | reserved | ||
PARAMETERS | reserved | |||
PARAMETER_MODE | non-reserved | non-reserved | ||
PARAMETER_NAME | non-reserved | non-reserved | ||
PARAMETER_ORDINAL_POSITION | non-reserved | non-reserved | ||
PARAMETER_SPECIFIC_CATALOG | non-reserved | non-reserved | ||
PARAMETER_SPECIFIC_NAME | non-reserved | non-reserved | ||
PARAMETER_SPECIFIC_SCHEMA | non-reserved | non-reserved | ||
PARSER | non-reserved | |||
PARTIAL | non-reserved | non-reserved | reserved | reserved |
PARTITION | reserved | |||
PASCAL | non-reserved | non-reserved | non-reserved | |
PASSWORD | non-reserved | |||
PATH | non-reserved | reserved | ||
PERCENTILE_CONT | reserved | |||
PERCENTILE_DISC | reserved | |||
PERCENT_RANK | reserved | |||
PLACING | reserved | non-reserved | ||
PLANS | non-reserved | |||
PLI | non-reserved | non-reserved | non-reserved | |
POSITION | non-reserved (cannot be function or type) | reserved | non-reserved | reserved |
POSTFIX | reserved | |||
POWER | reserved | |||
PRECEDING | non-reserved | |||
PRECISION | non-reserved (cannot be function or type) | reserved | reserved | reserved |
PREFIX | reserved | |||
PREORDER | reserved | |||
PREPARE | non-reserved | reserved | reserved | reserved |
PREPARED | non-reserved | |||
PRESERVE | non-reserved | non-reserved | reserved | reserved |
PRIMARY | reserved | reserved | reserved | reserved |
PRIOR | non-reserved | non-reserved | reserved | reserved |
PRIVILEGES | non-reserved | non-reserved | reserved | reserved |
PROCEDURAL | non-reserved | |||
PROCEDURE | non-reserved | reserved | reserved | reserved |
PUBLIC | non-reserved | reserved | reserved | |
QUOTE | non-reserved | |||
RANGE | reserved | |||
RANK | reserved | |||
READ | non-reserved | non-reserved | reserved | reserved |
READS | reserved | reserved | ||
REAL | non-reserved (cannot be function or type) | reserved | reserved | reserved |
REASSIGN | non-reserved | |||
RECHECK | non-reserved | |||
RECURSIVE | reserved | reserved | ||
REF | reserved | reserved | ||
REFERENCES | reserved | reserved | reserved | reserved |
REFERENCING | reserved | reserved | ||
REGR_AVGX | reserved | |||
REGR_AVGY | reserved | |||
REGR_COUNT | reserved | |||
REGR_INTERCEPT | reserved | |||
REGR_R2 | reserved | |||
REGR_SLOPE | reserved | |||
REGR_SXX | reserved | |||
REGR_SXY | reserved | |||
REGR_SYY | reserved | |||
REINDEX | non-reserved | |||
RELATIVE | non-reserved | non-reserved | reserved | reserved |
RELEASE | non-reserved | reserved | ||
RENAME | non-reserved | |||
REPEATABLE | non-reserved | non-reserved | non-reserved | non-reserved |
REPLACE | non-reserved | |||
REPLICA | non-reserved | |||
RESET | non-reserved | |||
RESTART | non-reserved | non-reserved | ||
RESTRICT | non-reserved | non-reserved | reserved | reserved |
RESULT | reserved | reserved | ||
RETURN | reserved | reserved | ||
RETURNED_CARDINALITY | non-reserved | |||
RETURNED_LENGTH | non-reserved | non-reserved | non-reserved | |
RETURNED_OCTET_LENGTH | non-reserved | non-reserved | non-reserved | |
RETURNED_SQLSTATE | non-reserved | non-reserved | non-reserved | |
RETURNING | reserved | |||
RETURNS | non-reserved | reserved | reserved | |
REVOKE | non-reserved | reserved | reserved | reserved |
RIGHT | reserved (can be function or type) | reserved | reserved | reserved |
ROLE | non-reserved | non-reserved | reserved | |
ROLLBACK | non-reserved | reserved | reserved | reserved |
ROLLUP | reserved | reserved | ||
ROUTINE | non-reserved | reserved | ||
ROUTINE_CATALOG | non-reserved | non-reserved | ||
ROUTINE_NAME | non-reserved | non-reserved | ||
ROUTINE_SCHEMA | non-reserved | non-reserved | ||
ROW | non-reserved (cannot be function or type) | reserved | reserved | |
ROWS | non-reserved | reserved | reserved | reserved |
ROW_COUNT | non-reserved | non-reserved | non-reserved | |
ROW_NUMBER | reserved | |||
RULE | non-reserved | |||
SAVEPOINT | non-reserved | reserved | reserved | |
SCALE | non-reserved | non-reserved | non-reserved | |
SCHEMA | non-reserved | non-reserved | reserved | reserved |
SCHEMA_NAME | non-reserved | non-reserved | non-reserved | |
SCOPE | reserved | reserved | ||
SCOPE_CATALOG | non-reserved | |||
SCOPE_NAME | non-reserved | |||
SCOPE_SCHEMA | non-reserved | |||
SCROLL | non-reserved | reserved | reserved | reserved |
SEARCH | non-reserved | reserved | reserved | |
SECOND | non-reserved | reserved | reserved | reserved |
SECTION | non-reserved | reserved | reserved | |
SECURITY | non-reserved | non-reserved | non-reserved | |
SELECT | reserved | reserved | reserved | reserved |
SELF | non-reserved | non-reserved | ||
SENSITIVE | reserved | non-reserved | ||
SEQUENCE | non-reserved | non-reserved | reserved | |
SERIALIZABLE | non-reserved | non-reserved | non-reserved | non-reserved |
SERVER_NAME | non-reserved | non-reserved | non-reserved | |
SESSION | non-reserved | non-reserved | reserved | reserved |
SESSION_USER | reserved | reserved | reserved | reserved |
SET | non-reserved | reserved | reserved | reserved |
SETOF | non-reserved (cannot be function or type) | |||
SETS | non-reserved | reserved | ||
SHARE | non-reserved | |||
SHOW | non-reserved | |||
SIMILAR | reserved (can be function or type) | reserved | non-reserved | |
SIMPLE | non-reserved | non-reserved | non-reserved | |
SIZE | non-reserved | reserved | reserved | |
SMALLINT | non-reserved (cannot be function or type) | reserved | reserved | reserved |
SOME | reserved | reserved | reserved | reserved |
SOURCE | non-reserved | non-reserved | ||
SPACE | non-reserved | reserved | reserved | |
SPECIFIC | reserved | reserved | ||
SPECIFICTYPE | reserved | reserved | ||
SPECIFIC_NAME | non-reserved | non-reserved | ||
SQL | reserved | reserved | reserved | |
SQLCODE | reserved | |||
SQLERROR | reserved | |||
SQLEXCEPTION | reserved | reserved | ||
SQLSTATE | reserved | reserved | reserved | |
SQLWARNING | reserved | reserved | ||
SQRT | reserved | |||
STABLE | non-reserved | |||
STANDALONE | non-reserved | non-reserved | ||
START | non-reserved | reserved | reserved | |
STATE | non-reserved | reserved | ||
STATEMENT | non-reserved | non-reserved | reserved | |
STATIC | reserved | reserved | ||
STATISTICS | non-reserved | |||
STDDEV_POP | reserved | |||
STDDEV_SAMP | reserved | |||
STDIN | non-reserved | |||
STDOUT | non-reserved | |||
STORAGE | non-reserved | |||
STRICT | non-reserved | |||
STRIP | non-reserved | non-reserved | ||
STRUCTURE | non-reserved | reserved | ||
STYLE | non-reserved | non-reserved | ||
SUBCLASS_ORIGIN | non-reserved | non-reserved | non-reserved | |
SUBLIST | non-reserved | |||
SUBMULTISET | reserved | |||
SUBSTRING | non-reserved (cannot be function or type) | reserved | non-reserved | reserved |
SUM | reserved | non-reserved | reserved | |
SUPERUSER | non-reserved | |||
SYMMETRIC | reserved | reserved | non-reserved | |
SYSID | non-reserved | |||
SYSTEM | non-reserved | reserved | non-reserved | |
SYSTEM_USER | reserved | reserved | reserved | |
TABLE | reserved | reserved | reserved | reserved |
TABLESAMPLE | reserved | |||
TABLESPACE | non-reserved | |||
TABLE_NAME | non-reserved | non-reserved | non-reserved | |
TEMP | non-reserved | |||
TEMPLATE | non-reserved | |||
TEMPORARY | non-reserved | non-reserved | reserved | reserved |
TERMINATE | reserved | |||
TEXT | non-reserved | |||
THAN | reserved | |||
THEN | reserved | reserved | reserved | reserved |
TIES | non-reserved | |||
TIME | non-reserved (cannot be function or type) | reserved | reserved | reserved |
TIMESTAMP | non-reserved (cannot be function or type) | reserved | reserved | reserved |
TIMEZONE_HOUR | reserved | reserved | reserved | |
TIMEZONE_MINUTE | reserved | reserved | reserved | |
TO | reserved | reserved | reserved | reserved |
TOP_LEVEL_COUNT | non-reserved | |||
TRAILING | reserved | reserved | reserved | reserved |
TRANSACTION | non-reserved | non-reserved | reserved | reserved |
TRANSACTIONS_COMMITTED | non-reserved | non-reserved | ||
TRANSACTIONS_ROLLED_BACK | non-reserved | non-reserved | ||
TRANSACTION_ACTIVE | non-reserved | non-reserved | ||
TRANSFORM | non-reserved | non-reserved | ||
TRANSFORMS | non-reserved | non-reserved | ||
TRANSLATE | reserved | non-reserved | reserved | |
TRANSLATION | reserved | reserved | reserved | |
TREAT | non-reserved (cannot be function or type) | reserved | reserved | |
TRIGGER | non-reserved | reserved | reserved | |
TRIGGER_CATALOG | non-reserved | non-reserved | ||
TRIGGER_NAME | non-reserved | non-reserved | ||
TRIGGER_SCHEMA | non-reserved | non-reserved | ||
TRIM | non-reserved (cannot be function or type) | reserved | non-reserved | reserved |
TRUE | reserved | reserved | reserved | reserved |
TRUNCATE | non-reserved | |||
TRUSTED | non-reserved | |||
TYPE | non-reserved | non-reserved | non-reserved | non-reserved |
UESCAPE | reserved | |||
UNBOUNDED | non-reserved | |||
UNCOMMITTED | non-reserved | non-reserved | non-reserved | non-reserved |
UNDER | non-reserved | reserved | ||
UNENCRYPTED | non-reserved | |||
UNION | reserved | reserved | reserved | reserved |
UNIQUE | reserved | reserved | reserved | reserved |
UNKNOWN | non-reserved | reserved | reserved | reserved |
UNLISTEN | non-reserved | |||
UNNAMED | non-reserved | non-reserved | non-reserved | |
UNNEST | reserved | reserved | ||
UNTIL | non-reserved | |||
UPDATE | non-reserved | reserved | reserved | reserved |
UPPER | reserved | non-reserved | reserved | |
USAGE | non-reserved | reserved | reserved | |
USER | reserved | reserved | reserved | reserved |
USER_DEFINED_TYPE_CATALOG | non-reserved | non-reserved | ||
USER_DEFINED_TYPE_CODE | non-reserved | |||
USER_DEFINED_TYPE_NAME | non-reserved | non-reserved | ||
USER_DEFINED_TYPE_SCHEMA | non-reserved | non-reserved | ||
USING | reserved | reserved | reserved | reserved |
VACUUM | non-reserved | |||
VALID | non-reserved | |||
VALIDATOR | non-reserved | |||
VALUE | non-reserved | reserved | reserved | reserved |
VALUES | non-reserved (cannot be function or type) | reserved | reserved | reserved |
VARCHAR | non-reserved (cannot be function or type) | reserved | reserved | reserved |
VARIABLE | reserved | |||
VARYING | non-reserved | reserved | reserved | reserved |
VAR_POP | reserved | |||
VAR_SAMP | reserved | |||
VERBOSE | reserved (can be function or type) | |||
VERSION | non-reserved | non-reserved | ||
VIEW | non-reserved | non-reserved | reserved | reserved |
VOLATILE | non-reserved | |||
WHEN | reserved | reserved | reserved | reserved |
WHENEVER | reserved | reserved | reserved | |
WHERE | reserved | reserved | reserved | reserved |
WHITESPACE | non-reserved | non-reserved | ||
WIDTH_BUCKET | reserved | |||
WINDOW | reserved | |||
WITH | reserved | reserved | reserved | reserved |
WITHIN | reserved | |||
WITHOUT | non-reserved | reserved | reserved | |
WORK | non-reserved | non-reserved | reserved | reserved |
WRITE | non-reserved | non-reserved | reserved | reserved |
XML | non-reserved | reserved | ||
XMLAGG | reserved | |||
XMLATTRIBUTES | non-reserved (cannot be function or type) | reserved | ||
XMLBINARY | reserved | |||
XMLCOMMENT | reserved | |||
XMLCONCAT | non-reserved (cannot be function or type) | reserved | ||
XMLELEMENT | non-reserved (cannot be function or type) | reserved | ||
XMLFOREST | non-reserved (cannot be function or type) | reserved | ||
XMLNAMESPACES | reserved | |||
XMLPARSE | non-reserved (cannot be function or type) | reserved | ||
XMLPI | non-reserved (cannot be function or type) | reserved | ||
XMLROOT | non-reserved (cannot be function or type) | reserved | ||
XMLSERIALIZE | non-reserved (cannot be function or type) | reserved | ||
YEAR | non-reserved | reserved | reserved | reserved |
YES | non-reserved | |||
ZONE | non-reserved | non-reserved | reserved | reserved |