Junior
SQL-də alt sorğular nədir?
sobes.tech Süni İntellekt
AI-dan cavab
SQL-də alt sorğu (və ya iç-içə sorğu), başqa bir SQL əməliyyatının (SELECT, INSERT, UPDATE, DELETE, CREATE TABLE) içində yerləşdirilmiş SELECT sorğusudur. Alt sorğu əvvəlcə icra olunur və onun nəticəsi xarici sorğu tərəfindən istifadə olunur.
-
İstifadə:
WHEREifadəsində məlumatların filtrlənməsi üçün.FROMifadəsində virtual cədvəl (törəmə cədvəl) kimi.SELECTifadəsində toplu və ya əlaqəli məlumatların göstərilməsi üçün (skalar alt sorğu).IN,EXISTS,ANY,ALLoperatorları ilə.
-
Üstünlüklər:
- Çətin məlumat seçmələrinə imkan verir.
- Çətin birləşmələrə nisbətən sorğuların oxunuşunu yaxşılaşdırır.
- Məlumat mənbəyi kimi istifadə oluna bilər.
-
Növləri:
- Skalar: Bir dəyər (bir sətir və bir sütun) qaytarır.
- Çox sətirli: Bir sütun və çox sətir qaytarır.
IN,ANY,ALLilə istifadə olunur. - Çox sütunlu: Bir neçə sütun qaytarır. Nadir hallarda istifadə olunur.
- Əlaqəli: Xarici sorğudan asılıdır və hər xarici sətir üçün icra olunur.
WHERE-də istifadə nümunəsi:
SELECT
order_id,
customer_id,
order_date
FROM
orders
WHERE
customer_id IN (
SELECT
customer_id
FROM
customers
WHERE
city = 'New York'
);
FROM-da istifadə nümunəsi:
SELECT
customer_name,
total_orders
FROM (
SELECT
c.customer_name,
COUNT(o.order_id) AS total_orders
FROM
customers c
JOIN
orders o ON c.customer_id = o.customer_id
GROUP BY
c.customer_name
) AS customer_order_counts
WHERE
total_orders > 10;