Каждая из реализаций языка SQL в конкретной СУБД называется диалектом. Функции, которые добавляются к стандарту языка разработчиками коммерческих реализаций, принято называть расширениями.
Выделяют три уровня соответствия стандарту ANSI/ISO — начальный, промежуточный и полный. В настоящее время не существует ни одного диалекта, полностью соответствующего стандарту.
В широко распространенных в настоящее время СУБД используются следующие диалекты языка SQL:
PL/SQL – в СУБД Oracle;
Transact-SQL – в СУБД Microsoft SQL;
Informix-SQL – в СУБД Informix;
Jet SQL – Microsoft Access.
Язык Jet SQL почти соответствует стандарту ANSI SQL. Основные различия языков Jet SQL и ANSI SQL состоят в следующем:
§ они имеют разные наборы зарезервированных слов и типов данных;
§ разные правила применимы к оператору Between, используемому для определения условий выборки записей; подстановочные знаки ANSI и Microsoft Jet, которые используются в операторе Like, различны; язык Jet SQL обычно предоставляет пользователю большую свободу, например, разрешается группировка и сортировка по значению выражения;
§ язык Jet SQL позволяет использовать более сложные выражения.