SQL вставка записей с использованием вложенных подзапросов с любым оператором
На этой странице мы собираемся обсудить, как два или более подзапроса могут быть реализованы в операторе 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
- Упражнения по SQL, практика, решение
- SQL Получить данные из таблиц [33 Упражнения]
- Булевы и реляционные операторы SQL [12 упражнений]
- Подстановочные знаки SQL и специальные операторы [22 упражнения]
- Агрегатные функции SQL [25 упражнений]
- Вывод запроса форматирования SQL [10 упражнений]
- SQL-запросы к нескольким таблицам [7 упражнений]
- ФИЛЬТРАЦИЯ И СОРТИРОВКА в базе данных персонала [38 упражнений]
- SQL СОЕДИНЯЕТ
- SQL ПОДПИСИ
- SQL Union [9 упражнений]
- SQL View [16 упражнений]
- Управление учетными записями пользователей SQL [16 упражнение]
- База данных фильмов
- ОСНОВНЫЕ запросы к базе данных фильмов [10 упражнений]
- ПОДПИСКИ на фильм База данных [16 упражнений]
- ПРИСОЕДИНЯЕТСЯ к базе данных фильма [24 упражнения]
- Футбольная база
- Вступление
- ОСНОВНЫЕ запросы по футболу базы данных [29 упражнений]
- ПОДПИСКИ по футбольной базе данных [33 упражнения]
- База данных больницы
- База данных сотрудников
- ОСНОВНЫЕ запросы к базе данных сотрудников [115 упражнений]
- БРОНИРОВАНИЕ на сотрудника База данных [77 Упражнения]
- Еще не все!
Хотите улучшить вышеуказанную статью? Вносите свои заметки / комментарии / примеры через Disqus.
Предыдущая: вставка результата запроса в другую таблицу
Далее: Обновить заявление
Новый контент: Composer: менеджер зависимостей для PHP , R программирования