Використання підзапитів в sql, програмування для початківців

Продовжуємо вивчати SQL, і сьогодні ми будемо говорити про досить корисну річ в SQL це «підзапитів». Розглянемо що таке підзапит і, звичайно ж, як зазвичай напишемо кілька прикладів, для того щоб краще зрозуміти, як писати ці підзапити і в яких випадках їх краще використовувати.

І почнемо ми як завжди з теорії.

Що таке підзапит?

Підзапит - це окремий запит всередині іншого запиту, який може об'єднуватися з основним, але не обов'язково.

Використовувати підзапити буває досить зручно в деяких випадках, але пам'ятайте, що зловживати ними не потрібно. Так як це значно ускладнює план запиту і відповідно уповільнює його роботу.

Про те, що ще впливає на швидкість виконання запитів, і чого краще не треба робити можете подивитися корисні поради з написання SQL запитів.

Для наочності я спробував зобразити підзапит схематично:

Використання підзапитів в sql, програмування для початківців

В яких випадках використовувати підзапит?

Як я вже сказав писати вкладені запити направо і наліво не варто, але іноді можна.

Наприклад, коли вибірка йде з однієї таблиці, яка має певний ключ, а Вам необхідно отримати одну колонку з максимальним значенням з іншої таблицю по цьому ключу, при цьому, не об'єднуючи ці таблиці (в даному випадку підзапит пишеться в конструкції select). Або, наприклад, Вам необхідно звертатися до даних, які розташовані в багатьох таблицях, при тому, що дані, з цих таблиць будуть братися шляхом якихось обчислень і вже до цих даних Вам необхідно звертатися, це можна зробити шляхом написання запиту в конструкції from , без написання додаткових VIEW уявлень. допустимо, що Вам цей запит буде потрібно тільки один раз, і щоб не засмічувати базу, Ви не будете створювати уявлення.

Де можна використовувати підзапит?

Підзапит можна використовувати практично у всіх конструкціях, давайте розберемо самі часто використовувані.

4. При об'єднанні. Іншими словами можна здійснити об'єднання таблиці з підзапитом. приклад:

Ось такі простенькі приклади, але це не все де можна використовувати підзапит, просто це найбільш поширені варіанти використання таких запитів. Сподіваюся, стало трохи зрозуміло, і на останок давайте наведемо приклад багаторівневого запиту, просто так, він не з життя, але так теж можна писати. приклад:

В даному запиті, ми звертаємося до підзапитів, в якому в свою чергу йде об'єднання з вкладеним запитом, а в якому використовується підзапит в конструкції select.

Ось такі приклади, вони не є прикладом виходу з якихось ситуацій, на практиці вони можуть, і не знадобиться, але для загального синтаксису я їх привів. На сьогодні все, в подальшому будемо освоювати нові тонкощі SQL. Бувай. Успіхів!

Схожі статті