кодесурса
«SQL

SQL вставка записей с использованием вложенных подзапросов с любым оператором

script1adsense2code
script1adsense3code

На этой странице мы собираемся обсудить, как два или более подзапроса могут быть реализованы в операторе INSERT INTO для вставки строк в таблицу.

Пример:

Пример таблицы: агент1


Пример таблицы: агенты


Образец таблицы: клиент


Пример таблицы: заказы


Чтобы вставить записи в таблицу 'agent1' из таблицы 'agent' при следующих условиях:

1. 'agent_code' таблицы агентов должен быть любым 'agent_code' из таблицы 'customer', который удовлетворяет условию ниже:

2. 'agent_code' таблицы клиентов должен быть любым 'agent_code' из таблицы 'orders', который удовлетворяет условию ниже:

3. 'advance_amount' таблицы 'orders' должно быть больше 600,

можно использовать следующий оператор SQL:

Код SQL:

INSERT INTO agent1
SELECT * FROM  agents
WHERE agent_code=ANY(
SELECT agent_code FROM customer
WHERE agent_code =ANY(
SELECT agent_code FROM orders
WHERE  advance_amount>600));

Вставка SQL с использованием вложенных подзапросов с любым оператором и группировкой по

Далее мы обсудим, как можно использовать ЛЮБОЙ оператор с GROUP BY в операторе INSERT INTO для вставки записей в таблицу.

Пример:

Пример таблицы: агент1


Пример таблицы: агенты


Образец таблицы: клиент


Пример таблицы: заказы


Чтобы вставить записи в таблицу 'agent1' из таблицы 'agent' при следующих условиях:

1. 'agent_code' таблицы агентов должен быть любым 'agent_code' из таблицы 'customer', который удовлетворяет условию ниже:

2. 'agent_code' таблицы клиентов должен быть любым 'agent_code' из таблицы 'orders', который удовлетворяет условию ниже:

3. 'ord_amount' таблицы 'orders' должно быть больше 1000,

4. Таблица 'ord_amount' таблицы 'orders' должна располагаться в группе,

можно использовать следующий оператор SQL:

Код SQL:

INSERT INTO agent1
SELECT * FROM  agents
WHERE agent_code=ANY(
SELECT agent_code FROM customer
WHERE agent_code =ANY(
SELECT agent_code FROM orders
WHERE  ord_amount>1000
GROUP BY ord_amount));

Вставка SQL с использованием вложенных подзапросов с любым оператором и сгруппировать по и упорядочить по

Далее мы обсудим, как ЛЮБОЙ оператор с ORDER BY и GROUP BY можно использовать в операторе INSERT INTO для вставки записей в таблицу.

Пример:

Пример таблицы: агент1


Пример таблицы: агенты


Образец таблицы: клиент


Пример таблицы: заказы


Чтобы вставить записи в таблицу 'agent1' из таблицы 'agent' при следующих условиях:

1. 'agent_code' таблицы агентов должен быть любым 'agent_code' из таблицы 'customer', который удовлетворяет условию ниже:

2. 'agent_code' таблицы клиентов должен быть любым 'agent_code' из таблицы 'orders', который удовлетворяет условию ниже:

3. 'advance_amount' таблицы 'orders' должно быть больше 600,

4. та же таблица 'advance_amount' из таблицы 'orders' должна входить в группу,

5. Таблица 'advance_amount' таблицы 'orders' должна располагаться в порядке возрастания,

можно использовать следующий оператор SQL:

Код SQL:

INSERT INTO agent1
SELECT * FROM  agents
WHERE agent_code=ANY(
SELECT agent_code FROM customer
WHERE agent_code =ANY(
SELECT agent_code FROM orders
WHERE  advance_amount>600
GROUP BY advance_amount
ORDER BY advance_amount));

Вставка SQL с использованием подзапросов с функцией max ()

Далее мы обсудим, как функцию MAX () в подзапросе можно использовать в операторе INSERT INTO для вставки записей в таблицу.

Пример:

Образец таблицы: высший заказ


Пример таблицы: заказы


Чтобы добавить значения в столбцы 'ord_amount', 'ord_date', 'cust_code' в таблице 'highorder' из таблицы 'orders' со следующими условиями:

1. Таблица 'orders' определена как псевдоним 'a' и псевдоним 'b',

2. «ord_amount» псевдонима «a» должно равняться максимальному «ord_amount» псевдонима «b», которое удовлетворяет условию ниже:

3. 'ord_date' псевдонима 'a' и псевдонима 'b' должны совпадать,

можно использовать следующий оператор SQL:

Код SQL:

INSERT INTO  highorder
SELECT ord_amount,ord_date,cust_code
FROM orders a
WHERE ord_amount=
(SELECT MAX(ord_amount)
FROM orders b
WHERE a.ord_date=b.ord_date);

Смотрите нашу базу данных моделей

Вот новый документ, который представляет собой набор вопросов с короткими и простыми ответами, полезными для изучения SQL, а также для интервью.

Упражнения по SQL

Хотите улучшить вышеуказанную статью? Вносите свои заметки / комментарии / примеры через Disqus.

Предыдущая: вставка результата запроса в другую таблицу
Далее: Обновить заявление

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code