Junior
SQL'de alt sorgular nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
SQL'de alt sorgu (veya iç içe sorgu), başka bir SQL ifadesinin (SELECT, INSERT, UPDATE, DELETE, CREATE TABLE) içine yerleştirilmiş SELECT sorgusudur. Alt sorgu önce çalıştırılır ve sonucu dış sorgu tarafından kullanılır.
-
Kullanım:
WHEREifadesinde veri filtreleme için.FROMifadesinde sanal tablo (türemiş tablo) olarak.SELECTifadesinde toplu veya ilişkili verileri göstermek için (skalar alt sorgu).IN,EXISTS,ANY,ALLoperatörleriyle.
-
Avantajlar:
- Karmaşık veri seçimleri yapmaya olanak tanır.
- Karmaşık birleştirmelere göre sorguların okunabilirliğini artırır.
- Veri kaynağı olarak kullanılabilir.
-
Türleri:
- Skalar: Tek bir değer (bir satır ve bir sütun) döndürür.
- Çok satırlı: Bir sütun ve birkaç satır döndürür.
IN,ANY,ALLile kullanılır. - Çok sütunlu: Birden fazla sütun döndürür. Nadiren kullanılır.
- İlişkili: Dış sorguya bağlıdır ve her dış sorgu satırı için çalıştırılır.
WHERE içinde kullanım örneği:
SELECT
order_id,
customer_id,
order_date
FROM
orders
WHERE
customer_id IN (
SELECT
customer_id
FROM
customers
WHERE
city = 'New York'
);
FROM içinde kullanım örneği:
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;