Язык запросов — язык компьютерного программирования, используемый для получения информации из базы данных.
Применение баз данных многообразно. Они позволяют извлекать записи или их части и выполнять различные вычисления перед отображением результатов. Интерфейс, с помощью которого задаются такие манипуляции, называется языком запросов. Если ранние языки запросов изначально были настолько сложными, что взаимодействие с электронными базами данных было под силу только специально обученным людям, то современные интерфейсы более дружелюбны и позволяют обычным пользователям получать доступ к информации из баз данных.
Основными типами популярных режимов запросов являются меню, метод «заполни пустое место» и структурированный запрос. Меню, особенно подходящее для новичков, требует, чтобы человек выбирал из нескольких альтернатив, отображаемых на мониторе. Метод «заполни пустое место» — это метод, при котором пользователю предлагается ввести ключевые слова в качестве поисковых запросов. Структурированный подход к запросам эффективен при работе с реляционными базами данных. Он имеет формальный, мощный синтаксис, который фактически является языком программирования, и способен вместить логические операторы. Одна из реализаций этого подхода, язык структурированных запросов (SQL), имеет следующий вид
Select [поле Fa, Fb, . . ., Fn]
Из [базы данных Da, Db, . . ., Dn]
Где [поле Fa = abc] и [поле Fb = def].
Языки структурированных запросов поддерживают поиск в базе данных и другие операции с помощью таких команд, как «найти», «удалить», «напечатать», «суммировать» и т. д. Смысловая структура SQL-запроса напоминает естественный язык, за исключением того, что его синтаксис ограничен и фиксирован. Вместо использования SQL-оператора можно представлять запросы в табличной форме. Эта техника, называемая «запрос по образцу» (query-by-example, или QBE), отображает пустую табличную форму и ожидает, что пользователь введет спецификации поиска в соответствующие столбцы. Затем программа строит запрос типа SQL на основе таблицы и выполняет его.
Наиболее гибким языком запросов является, конечно, естественный язык. Использование предложений на естественном языке в ограниченном виде для поиска в базах данных допускается некоторыми коммерческими программами управления базами данных. Эти программы анализируют синтаксис запроса, распознают слова действия и их синонимы, определяют имена файлов, записей и полей, а также выполняют необходимые логические операции. Были разработаны экспериментальные системы, которые принимают такие запросы на естественном языке в устной речи. Однако возможность использования неограниченного естественного языка для запросов к неструктурированной информации потребует дальнейшего развития машинного понимания естественного языка, в частности, методов представления семантического и прагматического контекста идей.