Appendix C. SQL Key Words

Table C.1 lists all tokens that are key words in the SQL standard and in LightDB 13.8-22.3. Background information can be found in Section 4.1.1. (For space reasons, only the latest two versions of the SQL standard, and SQL-92 for historical comparison, are included. The differences between those and the other intermediate standard versions are small.)

SQL distinguishes between reserved and non-reserved key words. According to the standard, reserved key words are the only real key words; they are never allowed as identifiers. Non-reserved key words only have a special meaning in particular contexts and can be used as identifiers in other contexts. Most non-reserved key words are actually the names of built-in tables and functions specified by SQL. The concept of non-reserved key words essentially only exists to declare that some predefined meaning is attached to a word in some contexts.

In the LightDB parser life is a bit more complicated. There are several different classes of tokens ranging from those that can never be used as an identifier to those that have absolutely no special status in the parser as compared to an ordinary identifier. (The latter is usually the case for functions specified by SQL.) Even reserved key words are not completely reserved in LightDB, but can be used as column labels (for example, SELECT 55 AS CHECK, even though CHECK is a reserved key word).

In Table C.1 in the column for LightDB we classify as non-reserved those key words that are explicitly known to the parser but are allowed as column or table names. Some key words that are otherwise non-reserved cannot be used as function or data type names and are marked accordingly. (Most of these words represent built-in functions or data types with special syntax. The function or type is still available but it cannot be redefined by the user.) Labeled reserved are those tokens that are not allowed as column or table names. Some reserved key words are allowable as names for functions or data types; this is also shown in the table. If not so marked, a reserved key word is only allowed as a column label. A blank entry in this column means that the word is treated as an ordinary identifier by LightDB.

Furthermore, while most key words can be used as bare column labels without writing AS before them (as described in Section 7.3.2), there are a few that require a leading AS to avoid ambiguity. These are marked in the table as requires AS.

As a general rule, if you get spurious parser errors for commands that contain any of the listed key words as an identifier you should try to quote the identifier to see if the problem goes away.

It is important to understand before studying Table C.1 that the fact that a key word is not reserved in LightDB does not mean that the feature related to the word is not implemented. Conversely, the presence of a key word does not indicate the existence of a feature.

Table C.1. SQL Key Words

Key WordPostgreSQLLightDBSQL:2016SQL:2011SQL-92
A  non-reservednon-reserved 
ABORTnon-reserved    
ABS  reservedreserved 
ABSENT  non-reservednon-reserved 
ABSOLUTEnon-reserved non-reservednon-reservedreserved
ACCESSnon-reserved    
ACCORDING  non-reservednon-reserved 
ACOS  reserved  
ACTIONnon-reserved non-reservednon-reservedreserved
ACTIVEnon-reserved, requires AS    
ADA  non-reservednon-reservednon-reserved
ADDnon-reserved non-reservednon-reservedreserved
ADMINnon-reserved non-reservednon-reserved 
AFTERnon-reserved non-reservednon-reserved 
AGGREGATEnon-reserved    
ALLreserved, requires AS reservedreservedreserved
ALLOCATE  reservedreservedreserved
ALSOnon-reserved    
ALTERnon-reserved reservedreservedreserved
ALWAYSnon-reserved non-reservednon-reserved 
ANALYSEreserved    
ANALYZEreserved    
ANDreserved reservedreservedreserved
ANYreserved, requires AS reservedreservedreserved
APPEND non-reserved, requires AS   
ARE  reservedreservedreserved
ARRAYreserved, requires AS reservedreserved 
ARRAY_AGG  reservedreserved 
ARRAY_​MAX_​CARDINALITY  reservedreserved 
ASreserved, requires AS reservedreservedreserved
ASCreserved non-reservednon-reservedreserved
ASENSITIVE non-reservedreservedreserved 
ASIN  reserved  
ASSERTIONnon-reserved non-reservednon-reservedreserved
ASSIGNMENTnon-reserved non-reservednon-reserved 
ASYMMETRICreserved reservedreserved 
ATnon-reserved reservedreservedreserved
ATAN  reserved  
ATOMIC  reservedreserved 
ATTACHnon-reserved    
ATTRIBUTEnon-reserved non-reservednon-reserved 
ATTRIBUTES  non-reservednon-reserved 
AUTHID non-reserved, requires AS   
AUTHORIZATIONreserved (can be function or type) reservedreservedreserved
AUTO_INCREMENT reserved, requires AS   
AVG  reservedreservedreserved
BACKWARDnon-reserved    
BASE64  non-reservednon-reserved 
BEFOREnon-reserved non-reservednon-reserved 
BEGINnon-reserved reservedreservedreserved
BEGIN_FRAME  reservedreserved 
BEGIN_PARTITION  reservedreserved 
BERNOULLI  non-reservednon-reserved 
BETWEENnon-reserved (cannot be function or type) reservedreservedreserved
BIGINTnon-reserved (cannot be function or type) reservedreserved 
BINARYreserved (can be function or type) reservedreserved 
BITnon-reserved (cannot be function or type)   reserved
BIT_LENGTH    reserved
BLOB  reservedreserved 
BLOCKED  non-reservednon-reserved 
BODY non-reserved, requires AS   
BOM  non-reservednon-reserved 
BOOLEANnon-reserved (cannot be function or type) reservedreserved 
BOTHreserved reservedreservedreserved
BREADTH  non-reservednon-reserved 
BYnon-reserved reservedreservedreserved
C  non-reservednon-reservednon-reserved
CACHEnon-reserved    
CALLnon-reserved reservedreserved 
CALLEDnon-reserved reservedreserved 
CARDINALITY  reservedreserved 
CASCADEnon-reserved non-reservednon-reservedreserved
CASCADEDnon-reserved reservedreservedreserved
CASEreserved reservedreservedreserved
CASTreserved reservedreservedreserved
CATALOGnon-reserved non-reservednon-reservedreserved
CATALOG_NAME  non-reservednon-reservednon-reserved
CEIL  reservedreserved 
CEILING  reservedreserved 
CHAINnon-reserved non-reservednon-reserved 
CHAINING  non-reserved  
CHARnon-reserved (cannot be function or type), requires AS reservedreservedreserved
CHARACTERnon-reserved (cannot be function or type), requires AS reservedreservedreserved
CHARACTERISTICSnon-reserved non-reservednon-reserved 
CHARACTERS  non-reservednon-reserved 
CHARACTER_LENGTH  reservedreservedreserved
CHARACTER_​SET_​CATALOG  non-reservednon-reservednon-reserved
CHARACTER_SET_NAME  non-reservednon-reservednon-reserved
CHARACTER_SET_SCHEMA  non-reservednon-reservednon-reserved
CHAR_LENGTH  reservedreservedreserved
CHECKreserved reservedreservedreserved
CHECKPOINTnon-reserved    
CLASSnon-reserved    
CLASSIFIER  reserved  
CLASS_ORIGIN  non-reservednon-reservednon-reserved
CLOB  reservedreserved 
CLOSEnon-reserved reservedreservedreserved
CLUSTERnon-reserved    
COALESCEnon-reserved (cannot be function or type) reservedreservedreserved
COBOL  non-reservednon-reservednon-reserved
COLLATEreserved reservedreservedreserved
COLLATIONreserved (can be function or type) non-reservednon-reservedreserved
COLLATION_CATALOG  non-reservednon-reservednon-reserved
COLLATION_NAME  non-reservednon-reservednon-reserved
COLLATION_SCHEMA  non-reservednon-reservednon-reserved
COLLECT  reservedreserved 
COLOCATE_WITH non-reserved, requires AS   
COLUMNreserved reservedreservedreserved
COLUMNSnon-reserved non-reservednon-reserved 
COLUMN_NAME  non-reservednon-reservednon-reserved
COMMAND_FUNCTION  non-reservednon-reservednon-reserved
COMMAND_​FUNCTION_​CODE  non-reservednon-reserved 
COMMENTnon-reserved    
COMMENTSnon-reserved    
COMMITnon-reserved reservedreservedreserved
COMMITTEDnon-reserved non-reservednon-reservednon-reserved
CONCURRENCYnon-reserved, requires AS    
CONCURRENTLYreserved (can be function or type)    
CONDITION  reservedreserved 
CONDITIONAL  non-reserved  
CONDITION_NUMBER  non-reservednon-reservednon-reserved
CONFIGURATIONnon-reserved    
CONFLICTnon-reserved    
CONNECT  reservedreservedreserved
CONNECTIONnon-reserved non-reservednon-reservedreserved
CONNECTION_NAME  non-reservednon-reservednon-reserved
CONSTRAINTreserved reservedreservedreserved
CONSTRAINTSnon-reserved non-reservednon-reservedreserved
CONSTRAINT_CATALOG  non-reservednon-reservednon-reserved
CONSTRAINT_NAME  non-reservednon-reservednon-reserved
CONSTRAINT_SCHEMA  non-reservednon-reservednon-reserved
CONSTRUCTOR  non-reservednon-reserved 
CONTAINSnon-reserved, requires AS reservedreserved 
CONTENTnon-reserved non-reservednon-reserved 
CONTINUEnon-reserved non-reservednon-reservedreserved
CONTROL  non-reservednon-reserved 
CONVERSIONnon-reserved    
CONVERT  reservedreservedreserved
COPYnon-reserved reserved  
CORR  reservedreserved 
CORRESPONDING  reservedreservedreserved
COS  reserved  
COSH  reserved  
COSTnon-reserved    
COUNT  reservedreservedreserved
COVAR_POP  reservedreserved 
COVAR_SAMP  reservedreserved 
CREATEreserved, requires AS reservedreservedreserved
CROSSreserved (can be function or type) reservedreservedreserved
CSVnon-reserved    
CUBEnon-reserved reservedreserved 
CUME_DIST  reservedreserved 
CURRENTnon-reserved reservedreservedreserved
CURRENT_CATALOGreserved reservedreserved 
CURRENT_DATEreserved reservedreservedreserved
CURRENT_​DEFAULT_​TRANSFORM_​GROUP  reservedreserved 
CURRENT_PATH  reservedreserved 
CURRENT_ROLEreserved reservedreserved 
CURRENT_ROW  reservedreserved 
CURRENT_SCHEMAreserved (can be function or type) reservedreserved 
CURRENT_TIMEreserved reservedreservedreserved
CURRENT_TIMESTAMPreserved reservedreservedreserved
CURRENT_​TRANSFORM_​GROUP_​FOR_​TYPE  reservedreserved 
CURRENT_USERreserved reservedreservedreserved
CURSORnon-reserved reservedreservedreserved
CURSOR_NAME  non-reservednon-reservednon-reserved
CYCLEnon-reserved reservedreserved 
DATAnon-reserved non-reservednon-reservednon-reserved
DATABASEnon-reserved    
DATALINK  reservedreserved 
DATE  reservedreservedreserved
DATETIME non-reserved (cannot be function or type), requires AS   
DATETIME_​INTERVAL_​CODE  non-reservednon-reservednon-reserved
DATETIME_​INTERVAL_​PRECISION  non-reservednon-reservednon-reserved
DAYnon-reserved, requires AS reservedreservedreserved
DB  non-reservednon-reserved 
DEALLOCATEnon-reserved reservedreservedreserved
DECnon-reserved (cannot be function or type) reservedreservedreserved
DECFLOAT  reserved  
DECIMALnon-reserved (cannot be function or type) reservedreservedreserved
DECLAREnon-reserved, requires "" reservedreservedreserved
DEFAULTreserved reservedreservedreserved
DEFAULTSnon-reserved non-reservednon-reserved 
DEFERRABLEreserved non-reservednon-reservedreserved
DEFERREDnon-reserved non-reservednon-reservedreserved
DEFINE  reserved  
DEFINED  non-reservednon-reserved 
DEFINERnon-reserved non-reservednon-reserved 
DEGREE  non-reservednon-reserved 
DELETEnon-reserved reservedreservedreserved
DELIMITERnon-reserved    
DELIMITERSnon-reserved    
DENSE_RANK  reservedreserved 
DEPENDSnon-reserved    
DEPTH  non-reservednon-reserved 
DEREF  reservedreserved 
DERIVED  non-reservednon-reserved 
DESCreserved non-reservednon-reservedreserved
DESCRIBE  reservedreservedreserved
DESCRIPTOR  non-reservednon-reservedreserved
DETACHnon-reserved    
DETERMINISTIC  reservedreserved 
DIAGNOSTICS  non-reservednon-reservedreserved
DICTIONARYnon-reserved    
DISABLEnon-reserved    
DISCARDnon-reserved    
DISCONNECT  reservedreservedreserved
DISPATCH  non-reservednon-reserved 
DISTINCTreserved reservedreservedreserved
DISTRIBUTED reserved, requires AS   
DLNEWCOPY  reservedreserved 
DLPREVIOUSCOPY  reservedreserved 
DLURLCOMPLETE  reservedreserved 
DLURLCOMPLETEONLY  reservedreserved 
DLURLCOMPLETEWRITE  reservedreserved 
DLURLPATH  reservedreserved 
DLURLPATHONLY  reservedreserved 
DLURLPATHWRITE  reservedreserved 
DLURLSCHEME  reservedreserved 
DLURLSERVER  reservedreserved 
DLVALUE  reservedreserved 
DOreserved    
DOCUMENTnon-reserved non-reservednon-reserved 
DOMAINnon-reserved non-reservednon-reservedreserved
DOUBLEnon-reserved reservedreservedreserved
DROPnon-reserved reservedreservedreserved
DYNAMIC  reservedreserved 
DYNAMIC_FUNCTION  non-reservednon-reservednon-reserved
DYNAMIC_​FUNCTION_​CODE  non-reservednon-reserved 
EACHnon-reserved reservedreserved 
ELEMENT  reservedreserved 
ELSEreserved reservedreservedreserved
ELSIF non-reserved, requires AS   
EMPTY  reservednon-reserved 
ENABLEnon-reserved    
ENCODINGnon-reserved non-reservednon-reserved 
ENCRYPTEDnon-reserved    
ENDreserved reservedreservedreserved
END-EXEC  reservedreservedreserved
END_FRAME  reservedreserved 
END_PARTITION  reservedreserved 
ENFORCED  non-reservednon-reserved 
ENUMnon-reserved    
EQUALS  reservedreserved 
ERROR  non-reserved  
ESCAPEnon-reserved reservedreservedreserved
EVENTnon-reserved    
EVERYnon-reserved, requires AS reservedreserved 
EXCEPT reserved, requires ASreservedreservedreserved
EXCEPTIONnon-reserved, requires AS   reserved
EXCHANGEnon-reserved, requires AS    
EXCLUDEreserved non-reservednon-reserved 
EXCLUDINGnon-reserved non-reservednon-reserved 
EXCLUSIVEnon-reserved    
EXEC  reservedreservedreserved
EXECUTEnon-reserved reservedreservedreserved
EXISTSnon-reserved (cannot be function or type) reservedreservedreserved
EXP  reservedreserved 
EXPAND non-reserved, requires AS   
EXPLAINnon-reserved    
EXPRESSIONnon-reserved non-reservednon-reserved 
EXTENSIONnon-reserved    
EXTERNALnon-reserved reservedreservedreserved
EXTRACTnon-reserved (cannot be function or type) reservedreservedreserved
FALSEreserved reservedreservedreserved
FAMILYnon-reserved    
FETCHreserved, requires AS reservedreservedreserved
FILE  non-reservednon-reserved 
FILTERnon-reserved, requires AS reservedreserved 
FINAL  non-reservednon-reserved 
FINISH  non-reserved  
FIRSTnon-reserved non-reservednon-reservedreserved
FIRST_VALUE  reservedreserved 
FLAG  non-reservednon-reserved 
FLOATnon-reserved (cannot be function or type) reservedreservedreserved
FLOOR  reservedreserved 
FOLLOWINGreserved non-reservednon-reserved 
FORreserved, requires AS reservedreservedreserved
FORCEnon-reserved    
FOREIGNreserved reservedreservedreserved
FORMATnon-reserved non-reserved  
FORTRAN  non-reservednon-reservednon-reserved
FORWARDnon-reserved    
FOUND  non-reservednon-reservedreserved
FRAME_ROW  reservedreserved 
FREE  reservedreserved 
FREEZEreserved (can be function or type)    
FROMreserved, requires AS reservedreservedreserved
FS  non-reservednon-reserved 
FULFILL  non-reserved  
FULLreserved (can be function or type) reservedreservedreserved
FULLSCANnon-reserved, requires AS    
FUNCTIONnon-reserved reservedreserved 
FUNCTIONSnon-reserved    
FUSION  reservedreserved 
G  non-reservednon-reserved 
GENERAL  non-reservednon-reserved 
GENERATEDnon-reserved non-reservednon-reserved 
GET  reservedreservedreserved
GLOBALnon-reserved reservedreservedreserved
GO  non-reservednon-reservedreserved
GOTO  non-reservednon-reservedreserved
GRANTreserved, requires AS reservedreservedreserved
GRANTEDnon-reserved non-reservednon-reserved 
GREATESTnon-reserved (cannot be function or type)    
GROUPreserved, requires AS reservedreservedreserved
GROUPINGnon-reserved (cannot be function or type) reservedreserved 
GROUPSnon-reserved reservedreserved 
GROUP_CONCAT reserved, requires AS   
HANDLERnon-reserved    
HASHnon-reserved, requires AS    
HAVINGreserved, requires AS reservedreservedreserved
HEADERnon-reserved    
HEX  non-reservednon-reserved 
HIERARCHY  non-reservednon-reserved 
HOLDnon-reserved reservedreserved 
HOURnon-reserved, requires AS reservedreservedreserved
ID  non-reservednon-reserved 
IDENTITYnon-reserved reservedreservedreserved
IFnon-reserved    
IGNOREnon-reserved, requires AS non-reservednon-reserved 
ILIKEreserved (can be function or type)    
IMMEDIATEnon-reserved non-reservednon-reservedreserved
IMMEDIATELY  non-reservednon-reserved 
IMMUTABLEnon-reserved    
IMPLEMENTATION  non-reservednon-reserved 
IMPLICITnon-reserved    
IMPORTnon-reserved reservedreserved 
INreserved reservedreservedreserved
INCLUDEnon-reserved    
INCLUDINGnon-reserved non-reservednon-reserved 
INCLUSIVE non-reserved, requires AS   
INCREMENTnon-reserved non-reservednon-reserved 
INDENT  non-reservednon-reserved 
INDEXnon-reserved    
INDEXESnon-reserved    
INDICATOR  reservedreservedreserved
INHERITnon-reserved    
INHERITSnon-reserved    
INITIAL  reserved  
INITIALLYreserved non-reservednon-reservedreserved
INLINEnon-reserved    
INNERreserved (can be function or type) reservedreservedreserved
INOUTnon-reserved (cannot be function or type) reservedreserved 
INPUTnon-reserved non-reservednon-reservedreserved
INSENSITIVEnon-reserved reservedreservedreserved
INSERTnon-reserved reservedreservedreserved
INSTANCE  non-reservednon-reserved 
INSTANTIABLE  non-reservednon-reserved 
INSTEADnon-reserved non-reservednon-reserved 
INTnon-reserved (cannot be function or type) reservedreservedreserved
INTEGERnon-reserved (cannot be function or type) reservedreservedreserved
INTEGRITY  non-reservednon-reserved 
INTERSECTreserved, requires AS reservedreservedreserved
INTERSECTION  reservedreserved 
INTERVALnon-reserved (cannot be function or type) reservedreservedreserved
INTOreserved, requires AS reservedreservedreserved
INVOKERnon-reserved non-reservednon-reserved 
ISreserved (can be function or type) reservedreservedreserved
ISNULLreserved (can be function or type), requires AS    
ISOLATIONnon-reserved non-reservednon-reservedreserved
JOINreserved (can be function or type) reservedreservedreserved
JSON  non-reserved  
JSON_ARRAY  reserved  
JSON_ARRAYAGG  reserved  
JSON_EXISTS  reserved  
JSON_OBJECT  reserved  
JSON_OBJECTAGG  reserved  
JSON_QUERY  reserved  
JSON_TABLE  reserved  
JSON_TABLE_PRIMITIVE  reserved  
JSON_VALUE  reserved  
K  non-reservednon-reserved 
KEEP  non-reserved  
KEYnon-reserved non-reservednon-reservedreserved
KEYS  non-reserved  
KEY_MEMBER  non-reservednon-reserved 
KEY_TYPE  non-reservednon-reserved 
LABELnon-reserved    
LAG  reservedreserved 
LANGUAGEnon-reserved reservedreservedreserved
LARGEnon-reserved reservedreserved 
LASTnon-reserved non-reservednon-reservedreserved
LAST_VALUE  reservedreserved 
LATERALreserved reservedreserved 
LEAD  reservedreserved 
LEADINGreserved reservedreservedreserved
LEAKPROOFnon-reserved    
LEASTnon-reserved (cannot be function or type)    
LEFTreserved (can be function or type) reservedreservedreserved
LENGTH  non-reservednon-reservednon-reserved
LESS non-reserved, requires AS   
LEVELnon-reserved non-reservednon-reservedreserved
LIBRARY  non-reservednon-reserved 
LIKEreserved (can be function or type) reservedreservedreserved
LIKE_REGEX  reservedreserved 
LIMITreserved, requires AS non-reservednon-reserved 
LINK  non-reservednon-reserved 
LISTnon-reserved, requires AS    
LISTAGG  reserved  
LISTENnon-reserved    
LN  reservedreserved 
LOADnon-reserved    
LOCALnon-reserved reservedreservedreserved
LOCALTIMEreserved reservedreserved 
LOCALTIMESTAMPreserved reservedreserved 
LOCATIONnon-reserved non-reservednon-reserved 
LOCATOR  non-reservednon-reserved 
LOCKnon-reserved    
LOCKEDnon-reserved    
LOG  reserved  
LOG10  reserved  
LOGGEDnon-reserved    
LOOP non-reserved, requires AS   
LOWER  reservedreservedreserved
M  non-reservednon-reserved 
MAP  non-reservednon-reserved 
MAPPINGnon-reserved non-reservednon-reserved 
MASTER non-reserved, requires AS   
MATCHnon-reserved reservedreservedreserved
MATCHED non-reservednon-reservednon-reserved 
MATCHES  reserved  
MATCH_NUMBER  reserved  
MATCH_RECOGNIZE  reserved  
MATERIALIZEDnon-reserved    
MAX  reservedreservedreserved
MAXVALUEnon-reserved non-reservednon-reserved 
MEASURES  reserved  
MEMBER  reservedreserved 
MERGE non-reservedreservedreserved 
MESSAGE_LENGTH  non-reservednon-reservednon-reserved
MESSAGE_OCTET_LENGTH  non-reservednon-reservednon-reserved
MESSAGE_TEXT  non-reservednon-reservednon-reserved
METHODnon-reserved reservedreserved 
MIN  reservedreservedreserved
MINUS reserved, requires AS   
MINUTEnon-reserved, requires AS reservedreservedreserved
MINVALUEnon-reserved non-reservednon-reserved 
MISSINGnon-reserved, requires AS    
MOD  reservedreserved 
MODEnon-reserved    
MODIFIES  reservedreserved 
MODIFYnon-reserved, requires AS    
MODULE  reservedreservedreserved
MONTHnon-reserved, requires AS reservedreservedreserved
MORE  non-reservednon-reservednon-reserved
MOVEnon-reserved    
MULTISET  reservedreserved 
MUMPS  non-reservednon-reservednon-reserved
NAMEnon-reserved non-reservednon-reservednon-reserved
NAMESnon-reserved non-reservednon-reservedreserved
NAMESPACE  non-reservednon-reserved 
NATIONALnon-reserved (cannot be function or type) reservedreservedreserved
NATURALreserved (can be function or type) reservedreservedreserved
NCHARnon-reserved (cannot be function or type) reservedreservedreserved
NCLOB  reservedreserved 
NESTED  non-reserved  
NESTING  non-reservednon-reserved 
NEWnon-reserved reservedreserved 
NEXTnon-reserved non-reservednon-reservedreserved
NFCnon-reserved non-reservednon-reserved 
NFDnon-reserved non-reservednon-reserved 
NFKCnon-reserved non-reservednon-reserved 
NFKDnon-reserved non-reservednon-reserved 
NIL  non-reservednon-reserved 
NOnon-reserved reservedreservedreserved
NONEnon-reserved (cannot be function or type) reservedreserved 
NORMALIZEnon-reserved (cannot be function or type) reservedreserved 
NORMALIZEDnon-reserved non-reservednon-reserved 
NOTreserved reservedreservedreserved
NOTHINGnon-reserved    
NOTIFYnon-reserved    
NOTNULLreserved (can be function or type), requires AS    
NOWAITnon-reserved    
NTH_VALUE  reservedreserved 
NTILE  reservedreserved 
NULLreserved reservedreservedreserved
NULLABLE  non-reservednon-reservednon-reserved
NULLIFnon-reserved (cannot be function or type) reservedreservedreserved
NULLSnon-reserved non-reservednon-reserved 
NUMBER non-reserved (cannot be function or type), requires ASnon-reservednon-reservednon-reserved
NUMERICnon-reserved (cannot be function or type) reservedreservedreserved
OBJECTnon-reserved non-reservednon-reserved 
OCCURRENCES_REGEX  reservedreserved 
OCTETS  non-reservednon-reserved 
OCTET_LENGTH  reservedreservedreserved
OFnon-reserved reservedreservedreserved
OFFnon-reserved non-reservednon-reserved 
OFFSETreserved, requires AS reservedreserved 
OIDSnon-reserved    
OLDnon-reserved reservedreserved 
OMIT  reserved  
ONreserved, requires AS reservedreservedreserved
ONE  reserved  
ONLYreserved reservedreservedreserved
OPEN  reservedreservedreserved
OPERATORnon-reserved    
OPTIONnon-reserved non-reservednon-reservedreserved
OPTIONSnon-reserved non-reservednon-reserved 
ORreserved reservedreservedreserved
ORDERreserved, requires AS reservedreservedreserved
ORDEREDnon-reserved, requires AS    
ORDERING  non-reservednon-reserved 
ORDINALITYnon-reserved non-reservednon-reserved 
OTHERSnon-reserved non-reservednon-reserved 
OUTnon-reserved (cannot be function or type) reservedreserved 
OUTERreserved (can be function or type) reservedreservedreserved
OUTPUT  non-reservednon-reservedreserved
OVERnon-reserved, requires AS reservedreserved 
OVERFLOW  non-reserved  
OVERLAPSreserved (can be function or type), requires AS reservedreservedreserved
OVERLAYnon-reserved (cannot be function or type) reservedreserved 
OVERRIDINGnon-reserved non-reservednon-reserved 
OWNEDnon-reserved    
OWNERnon-reserved    
P  non-reservednon-reserved 
PACKAGE non-reserved, requires AS   
PAD  non-reservednon-reservedreserved
PARALLELnon-reserved    
PARALLEL_ENABLE non-reserved, requires AS   
PARAMETER  reservedreserved 
PARAMETER_MODE  non-reservednon-reserved 
PARAMETER_NAME  non-reservednon-reserved 
PARAMETER_​ORDINAL_​POSITION  non-reservednon-reserved 
PARAMETER_​SPECIFIC_​CATALOG  non-reservednon-reserved 
PARAMETER_​SPECIFIC_​NAME  non-reservednon-reserved 
PARAMETER_​SPECIFIC_​SCHEMA  non-reservednon-reserved 
PARSERnon-reserved    
PARTIALnon-reserved non-reservednon-reservedreserved
PARTITIONreserved, requires AS reservedreserved 
PARTITIONS non-reserved, requires AS   
PASCAL  non-reservednon-reservednon-reserved
PASS  non-reserved  
PASSINGnon-reserved non-reservednon-reserved 
PASSTHROUGH  non-reservednon-reserved 
PASSWORDnon-reserved    
PAST  non-reserved  
PATH  non-reservednon-reserved 
PATTERN  reserved  
PER  reserved  
PERCENT  reservedreserved 
PERCENTILE_CONT  reservedreserved 
PERCENTILE_DISC  reservedreserved 
PERCENT_RANK  reservedreserved 
PERIOD  reservedreserved 
PERMISSION  non-reservednon-reserved 
PERMUTE  reserved  
PLACINGreserved non-reservednon-reserved 
PLAN  non-reserved  
PLANSnon-reserved    
PLI  non-reservednon-reservednon-reserved
POLICYnon-reserved    
PORTION  reservedreserved 
POSITIONnon-reserved (cannot be function or type) reservedreservedreserved
POSITION_REGEX  reservedreserved 
POWER  reservedreserved 
PRECEDES  reservedreserved 
PRECEDINGreserved non-reservednon-reserved 
PRECISIONnon-reserved (cannot be function or type), requires AS reservedreservedreserved
PREPAREnon-reserved reservedreservedreserved
PREPAREDnon-reserved    
PRESERVEnon-reserved non-reservednon-reservedreserved
PRIMARYreserved reservedreservedreserved
PRIORnon-reserved non-reservednon-reservedreserved
PRIVATE  non-reserved  
PRIVILEGESnon-reserved non-reservednon-reservedreserved
PROCEDURALnon-reserved    
PROCEDUREnon-reserved reservedreservedreserved
PROCEDURESnon-reserved    
PROGRAMnon-reserved    
PRUNE  non-reserved  
PTF  reserved  
PUBLIC  non-reservednon-reservedreserved
PUBLICATIONnon-reserved    
QUOTEnon-reserved    
QUOTES  non-reserved  
RANDOMLY non-reserved, requires AS   
RANGEnon-reserved reservedreserved 
RANK  reservedreserved 
READnon-reserved non-reservednon-reservedreserved
READABLE non-reserved, requires AS   
READS  reservedreserved 
REALnon-reserved (cannot be function or type) reservedreservedreserved
REASSIGNnon-reserved    
RECHECKnon-reserved    
RECORD non-reserved, requires AS   
RECOVERY  non-reservednon-reserved 
RECURSIVEnon-reserved reservedreserved 
REFnon-reserved reservedreserved 
REFERENCESreserved reservedreservedreserved
REFERENCINGnon-reserved reservedreserved 
REFRESHnon-reserved    
REGR_AVGX  reservedreserved 
REGR_AVGY  reservedreserved 
REGR_COUNT  reservedreserved 
REGR_INTERCEPT  reservedreserved 
REGR_R2  reservedreserved 
REGR_SLOPE  reservedreserved 
REGR_SXX  reservedreserved 
REGR_SXY  reservedreserved 
REGR_SYY  reservedreserved 
REINDEXnon-reserved    
RELATIVEnon-reserved non-reservednon-reservedreserved
RELEASEnon-reserved reservedreserved 
RENAMEnon-reserved    
REPEATABLEnon-reserved non-reservednon-reservednon-reserved
REPLACEnon-reserved    
REPLICAnon-reserved    
REPLICATED non-reserved, requires AS   
REQUIRING  non-reservednon-reserved 
RESETnon-reserved    
RESPECT  non-reservednon-reserved 
RESTARTnon-reserved non-reservednon-reserved 
RESTORE  non-reservednon-reserved 
RESTRICTnon-reserved non-reservednon-reservedreserved
RESULT  reservedreserved 
RETURN non-reservedreservedreserved 
RETURNED_CARDINALITY  non-reservednon-reserved 
RETURNED_LENGTH  non-reservednon-reservednon-reserved
RETURNED_​OCTET_​LENGTH  non-reservednon-reservednon-reserved
RETURNED_SQLSTATE  non-reservednon-reservednon-reserved
RETURNINGreserved, requires AS non-reservednon-reserved 
RETURNSnon-reserved reservedreserved 
REVOKEnon-reserved reservedreservedreserved
RIGHTreserved (can be function or type) reservedreservedreserved
ROLEnon-reserved non-reservednon-reserved 
ROLLBACKnon-reserved reservedreservedreserved
ROLLUPnon-reserved reservedreserved 
ROOTPARTITIONnon-reserved, requires AS    
ROUTINEnon-reserved non-reservednon-reserved 
ROUTINESnon-reserved    
ROUTINE_CATALOG  non-reservednon-reserved 
ROUTINE_NAME  non-reservednon-reserved 
ROUTINE_SCHEMA  non-reservednon-reserved 
ROWnon-reserved (cannot be function or type) reservedreserved 
ROWNUM reserved, requires AS   
ROWSnon-reserved reservedreservedreserved
ROWTYPE non-reserved, requires AS   
ROW_COUNT  non-reservednon-reservednon-reserved
ROW_NUMBER  reservedreserved 
RULEnon-reserved    
RUNNING  reserved  
SAVEPOINTnon-reserved reservedreserved 
SCALAR  non-reserved  
SCALE  non-reservednon-reservednon-reserved
SCHEMAnon-reserved non-reservednon-reservedreserved
SCHEMASnon-reserved    
SCHEMA_NAME  non-reservednon-reservednon-reserved
SCOPE  reservedreserved 
SCOPE_CATALOG  non-reservednon-reserved 
SCOPE_NAME  non-reservednon-reserved 
SCOPE_SCHEMA  non-reservednon-reserved 
SCROLLnon-reserved reservedreservedreserved
SEARCHnon-reserved reservedreserved 
SECONDnon-reserved, requires AS reservedreservedreserved
SECTION  non-reservednon-reservedreserved
SECURITYnon-reserved non-reservednon-reserved 
SEEK  reserved  
SELECTreserved reservedreservedreserved
SELECTIVE  non-reservednon-reserved 
SELF  non-reservednon-reserved 
SENSITIVE  reservedreserved 
SEPARATOR reserved, requires AS   
SEQUENCEnon-reserved non-reservednon-reserved 
SEQUENCESnon-reserved    
SERIALIZABLEnon-reserved non-reservednon-reservednon-reserved
SERVERnon-reserved non-reservednon-reserved 
SERVER_NAME  non-reservednon-reservednon-reserved
SESSIONnon-reserved non-reservednon-reservedreserved
SESSION_USERreserved reservedreservedreserved
SETnon-reserved reservedreservedreserved
SETOFnon-reserved (cannot be function or type)    
SETSnon-reserved non-reservednon-reserved 
SHARD_COUNT non-reserved, requires AS   
SHAREnon-reserved    
SHOWnon-reserved reserved  
SIMILARreserved (can be function or type) reservedreserved 
SIMPLEnon-reserved non-reservednon-reserved 
SIN  reserved  
SINH  reserved  
SIZE  non-reservednon-reservedreserved
SKIPnon-reserved reserved  
SMALLINTnon-reserved (cannot be function or type) reservedreservedreserved
SNAPSHOTnon-reserved    
SOMEreserved, requires AS reservedreservedreserved
SOURCE  non-reservednon-reserved 
SPACE  non-reservednon-reservedreserved
SPECIFIC  reservedreserved 
SPECIFICTYPE  reservedreserved 
SPECIFIC_NAME  non-reservednon-reserved 
SPLIT non-reserved, requires AS   
SQLnon-reserved reservedreservedreserved
SQLCODE    reserved
SQLERROR    reserved
SQLEXCEPTION  reservedreserved 
SQLSTATE  reservedreservedreserved
SQLWARNING  reservedreserved 
SQRT  reservedreserved 
STABLEnon-reserved    
STANDALONEnon-reserved non-reservednon-reserved 
STARTnon-reserved reservedreserved 
STATE  non-reservednon-reserved 
STATEMENTnon-reserved non-reservednon-reserved 
STATIC  reservedreserved 
STATISTICSnon-reserved    
STDDEV_POP  reservedreserved 
STDDEV_SAMP  reservedreserved 
STDINnon-reserved    
STDOUTnon-reserved    
STORAGEnon-reserved    
STORE non-reserved, requires AS   
STOREDnon-reserved    
STRICTnon-reserved    
STRING  non-reserved  
STRIPnon-reserved non-reservednon-reserved 
STRUCTURE  non-reservednon-reserved 
STYLE  non-reservednon-reserved 
SUBCLASS_ORIGIN  non-reservednon-reservednon-reserved
SUBMULTISET  reservedreserved 
SUBPARTITION non-reserved, requires AS   
SUBPARTITIONS non-reserved, requires AS   
SUBSCRIPTIONnon-reserved    
SUBSET  reserved  
SUBSTRINGnon-reserved (cannot be function or type) reservedreservedreserved
SUBSTRING_REGEX  reservedreserved 
SUBTYPEnon-reserved, requires AS    
SUCCEEDS  reservedreserved 
SUM  reservedreservedreserved
SUPPORTnon-reserved    
SYMMETRICreserved reservedreserved 
SYSDATE reserved, requires AS   
SYSIDnon-reserved    
SYSTEMnon-reserved reservedreserved 
SYSTEM_TIME  reservedreserved 
SYSTEM_USER  reservedreservedreserved
SYSTIMESTAMP reserved, requires AS   
T  non-reservednon-reserved 
TABLEreserved reservedreservedreserved
TABLESnon-reserved    
TABLESAMPLEreserved (can be function or type) reservedreserved 
TABLESPACEnon-reserved    
TABLE_NAME  non-reservednon-reservednon-reserved
TAN  reserved  
TANH  reserved  
TEMPnon-reserved    
TEMPLATEnon-reserved    
TEMPORARYnon-reserved non-reservednon-reservedreserved
TEXTnon-reserved    
THAN non-reserved, requires AS   
THENreserved reservedreservedreserved
THROUGH  non-reserved  
TIESnon-reserved non-reservednon-reserved 
TIMEnon-reserved (cannot be function or type) reservedreservedreserved
TIMESTAMPnon-reserved (cannot be function or type) reservedreservedreserved
TIMEZONE_HOUR  reservedreservedreserved
TIMEZONE_MINUTE  reservedreservedreserved
TOreserved, requires AS reservedreservedreserved
TOKEN  non-reservednon-reserved 
TOP_LEVEL_COUNT  non-reservednon-reserved 
TRAILINGreserved reservedreservedreserved
TRANSACTIONnon-reserved non-reservednon-reservedreserved
TRANSACTIONS_​COMMITTED  non-reservednon-reserved 
TRANSACTIONS_​ROLLED_​BACK  non-reservednon-reserved 
TRANSACTION_ACTIVE  non-reservednon-reserved 
TRANSFORMnon-reserved non-reservednon-reserved 
TRANSFORMS  non-reservednon-reserved 
TRANSLATE  reservedreservedreserved
TRANSLATE_REGEX  reservedreserved 
TRANSLATION  reservedreservedreserved
TREATnon-reserved (cannot be function or type) reservedreserved 
TRIGGERnon-reserved reservedreserved 
TRIGGER_CATALOG  non-reservednon-reserved 
TRIGGER_NAME  non-reservednon-reserved 
TRIGGER_SCHEMA  non-reservednon-reserved 
TRIMnon-reserved (cannot be function or type) reservedreservedreserved
TRIM_ARRAY  reservedreserved 
TRUEreserved reservedreservedreserved
TRUNCATEnon-reserved reservedreserved 
TRUSTEDnon-reserved    
TYPEnon-reserved non-reservednon-reservednon-reserved
TYPESnon-reserved    
UESCAPEnon-reserved reservedreserved 
UNBOUNDEDreserved non-reservednon-reserved 
UNCOMMITTEDnon-reserved non-reservednon-reservednon-reserved
UNCONDITIONAL  non-reserved  
UNDER  non-reservednon-reserved 
UNENCRYPTEDnon-reserved    
UNIONreserved, requires AS reservedreservedreserved
UNIQUEreserved reservedreservedreserved
UNKNOWNnon-reserved reservedreservedreserved
UNLINK  non-reservednon-reserved 
UNLISTENnon-reserved    
UNLOGGEDnon-reserved    
UNMATCHED  reserved  
UNNAMED  non-reservednon-reservednon-reserved
UNNEST  reservedreserved 
UNTILnon-reserved    
UNTYPED  non-reservednon-reserved 
UPDATEnon-reserved reservedreservedreserved
UPPER  reservedreservedreserved
URI  non-reservednon-reserved 
USAGE  non-reservednon-reservedreserved
USERreserved reservedreservedreserved
USER_​DEFINED_​TYPE_​CATALOG  non-reservednon-reserved 
USER_​DEFINED_​TYPE_​CODE  non-reservednon-reserved 
USER_​DEFINED_​TYPE_​NAME  non-reservednon-reserved 
USER_​DEFINED_​TYPE_​SCHEMA  non-reservednon-reserved 
USINGreserved reservedreservedreserved
UTF16  non-reserved  
UTF32  non-reserved  
UTF8  non-reserved  
VACUUMnon-reserved    
VALIDnon-reserved non-reservednon-reserved 
VALIDATEnon-reserved    
VALIDATORnon-reserved    
VALUEnon-reserved reservedreservedreserved
VALUESnon-reserved (cannot be function or type) reservedreservedreserved
VALUE_OF  reservedreserved 
VARBINARY  reservedreserved 
VARCHARnon-reserved (cannot be function or type) reservedreservedreserved
VARIADICreserved    
VARYINGnon-reserved, requires AS reservedreservedreserved
VAR_POP  reservedreserved 
VAR_SAMP  reservedreserved 
VERBOSEreserved (can be function or type)    
VERSIONnon-reserved non-reservednon-reserved 
VERSIONING  reservedreserved 
VIEWnon-reserved non-reservednon-reservedreserved
VIEWSnon-reserved    
VOLATILEnon-reserved    
WHENreserved reservedreservedreserved
WHENEVER  reservedreservedreserved
WHEREreserved, requires AS reservedreservedreserved
WHILE non-reserved, requires AS   
WHITESPACEnon-reserved non-reservednon-reserved 
WIDTH_BUCKET  reservedreserved 
WINDOWreserved, requires AS reservedreserved 
WITHreserved, requires AS reservedreservedreserved
WITHINnon-reserved, requires AS reservedreserved 
WITHOUTnon-reserved, requires AS reservedreserved 
WORKnon-reserved non-reservednon-reservedreserved
WRAPPERnon-reserved non-reservednon-reserved 
WRITABLEnon-reserved, requires AS    
WRITEnon-reserved non-reservednon-reservedreserved
XMLnon-reserved reservedreserved 
XMLAGG  reservedreserved 
XMLATTRIBUTESnon-reserved (cannot be function or type) reservedreserved 
XMLBINARY  reservedreserved 
XMLCAST  reservedreserved 
XMLCOMMENT  reservedreserved 
XMLCONCATnon-reserved (cannot be function or type) reservedreserved 
XMLDECLARATION  non-reservednon-reserved 
XMLDOCUMENT  reservedreserved 
XMLELEMENTnon-reserved (cannot be function or type) reservedreserved 
XMLEXISTSnon-reserved (cannot be function or type) reservedreserved 
XMLFORESTnon-reserved (cannot be function or type) reservedreserved 
XMLITERATE  reservedreserved 
XMLNAMESPACESnon-reserved (cannot be function or type) reservedreserved 
XMLPARSEnon-reserved (cannot be function or type) reservedreserved 
XMLPInon-reserved (cannot be function or type) reservedreserved 
XMLQUERY  reservedreserved 
XMLROOTnon-reserved (cannot be function or type)    
XMLSCHEMA  non-reservednon-reserved 
XMLSERIALIZEnon-reserved (cannot be function or type) reservedreserved 
XMLTABLEnon-reserved (cannot be function or type) reservedreserved 
XMLTEXT  reservedreserved 
XMLVALIDATE  reservedreserved 
YEARnon-reserved, requires AS reservedreservedreserved
YESnon-reserved non-reservednon-reserved 
ZONEnon-reserved non-reservednon-reservedreserved