Элементы команд SQL разделены на две категории: основные и функциональные элементы языка.
Основные элементы языка:
§ <separator> - разделитель;
§ <comment> - комментарий, не обрабатываемый системой как команда;
§ <space> - пробел;
§ <newline> - определяемый в приложении конец символьной строки;
§ <identifier> - идентификатор элемента, согласно стандарту ANSI, символы должны быть набраны в верхнем регистре, а сам идентификатор не должен быть длиннее 18 – ти символов.
§ <underscore>- знак _;
§ <percent sign> - символ %;
§ <string> - любой печатаемый текст в одиночных кавычках.
§ <delimiter> - любой из следующих знаков:, () < >.: = + - | <> <= =>, <string>, а так же двойная кавычка;
§ <SQL term> - окончание вложенной команды.
Функциональные элементы команд SQL:
§ <query> - предложение SELECT;
§ <subquery> - заключенное в круглых скобках предложение SELECT внутри другого условия, которое фактически оценивается отдельно;
§ <value expression><primary> | <primary><operator><primary> | <primary><operator><value expression> - конструкция, в которой <operator> может быть любым из следующих: + - / *;
|
|
§ <primary> - может быть <column name> - названием поля таблицы, <literal> - текстовый строкой (строкой литералов) <string> или математическим выражением <mathematical expression>, <aggregaye function> - агрегатной, (т.е. статической) функцией, <built –in constant> - внутренней константой или <nonstandard function> - нестандартной функцией (например, определенной пользователем);
§ <table name> - имя таблицы данных <identifier>;
§ <column spec> - конструкция следующей структуры [<table name>|<alias>]<column name>, где <alias> - определенное системой условное логическое имя таблицы данных;
§ <grouping column> - группа полей, специфицированная заданными <column spec>;
§ <ordering column> - сортируемые поля, специфицированные заданными <column spec>;
§ <colconstraint> NOT NULL | UNIQUE | CHEC (<predicate>) | PRIMARY KEY | REFERENCES <table name>[<column name>] NOT NULL CHECK (<predicate>) <predicate> UNIQUE PRIMARY KEY