Встраивание запросов против выравнивания
Я копался в Интернете снова и снова и не мог найти разумного ответа. В чем разница между встраиванием и выравниванием в запросе SQL? Я действительно использую оба взаимозаменяемо, в конечном итоге они приводят к одному и тому же результату - большой один запрос, а не много атомарных. Но, может быть, есть разница в определениях? Например, встроенные ссылки относятся только к функциям, а уплощение означает преобразование подзапроса в объединение только как здесь? Но в другом источнике можно найти пример совершенно другого преобразования.
1 ответ
Я предполагаю, что могут быть небольшие различия в том, как "встраивание" и "выравнивание" определяются людьми, но способ, которым эти термины обычно понимаются в сообществе PostgreSQL, заключается в том, что встраивание - это определение LANGUAGE sql
функция в основной запрос, а уплощение - это преобразование подзапроса или представления во что-то другое, чем подзапрос, например, соединение.