Junior
SQLдеги кичи суроолор эмне?
sobes.tech AI
AIден жооп
SQLде ички суроо (же же ички суроо) башка бир SQL буйругунун (SELECT, INSERT, UPDATE, DELETE, CREATE TABLE) ичинде жайгашкан SELECT суроосу. Ички суроо биринчи ишке ашырылат жана анын жыйынтыгы тышкы суроодо колдонулат.
-
Колдонуу:
- Маалыматтарды фильтрлөө үчүн
WHEREбөлүмүндө. - Виртуалдык таблица (чыгарылган таблица) катары
FROMбөлүмүндө. - Жыйынтыктаган же байланышкан маалыматтарды көрсөтүү үчүн
SELECTбөлүмүндө (скаляр ички суроо). IN,EXISTS,ANY,ALLоператорлору менен.
- Маалыматтарды фильтрлөө үчүн
-
Артыкчылыктары:
- Кыйынчылык менен маалыматтарды тандоого мүмкүндүк берет.
- Кыйынчылык менен бирикмелерге салыштырмалуу суроолордун окуулушун жакшыртат.
- Маалымат булагы катары колдонулушу мүмкүн.
-
Түрлөрү:
- Скаляр: Бир маанини кайтарат (бир сап жана бир багана).
- Көп саптуу: Бир багана жана бир нече сап кайтарат.
IN,ANY,ALLменен колдонулат. - Көп баганалуулук: Бир нече багананы кайтарат. Аз колдонулат.
- Коорелдүү: Тышкы суроого көз каранды жана ар бир тышкы сап үчүн ишке ашырылат.
WHERE бөлүмүндө колдонуу мисалы:
SELECT
order_id,
customer_id,
order_date
FROM
orders
WHERE
customer_id IN (
SELECT
customer_id
FROM
customers
WHERE
city = 'New York'
);
FROM бөлүмүндө колдонуу мисалы:
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;