SQL считается Четвертым поколением компьютерным языком. Первые три в основном:
- Машинный код.
- Код сборки.
- Обычные языки общего назначения, такие как C, C ++, Java , Python и т. Д.
Итак, исходя из общеупотребительного определения в информатике, это язык программирования. И SQL является ярким примером целого класса языков (и, возможно, наиболее широко используемого в этом классе).
С этим связан вопрос, является ли SQL тьюрингово-полным - это может SQL подражать машине Тьюринга. Я должен подчеркнуть, что это действительно теоретический вопрос: ни одна конечная машина не является действительно полной по Тьюрингу.
На самом деле я никогда не изучал это подробно, но я читал, что оригинал SQL был неполным по Тьюрингу. Только добавление рекурсивных CTE делает его завершенным (я думаю, рекурсивные пользовательские функции также могут служить этой цели).