Обновление SQL с использованием подзапросов
На этой странице мы обсуждаем использование подзапроса для обновления значений столбцов с помощью оператора UPDATE .
Пример:
Образец таблицы: клиент
Пример таблицы: агент1
Чтобы обновить таблицу 'agent1' со следующими условиями -
1. измененное значение для «комиссия» является «комиссия» +. 02,
2. число 2 больше или равно номеру 'cust_code' из таблицы 'customer', который удовлетворяет условию ниже:
3. 'agent_code' таблицы 'customer' и таблицы 'agent1' должны совпадать,
можно использовать следующий оператор SQL:
Код SQL:
UPDATE agent1
SET commission=commission+.02
WHERE 2>=(
SELECT COUNT(cust_code) FROM customer
WHERE customer.agent_code=agent1.agent_code);
Выход:
Обновление SQL с использованием подзапросов с 'IN'
Далее мы собираемся обсудить использование IN внутри подзапроса с оператором UPDATE, чтобы обновить указанные столбцы.
Пример:
Пример таблицы: заказы
Пример таблицы: агент1
Чтобы обновить таблицу 'agent1' со следующими условиями -
1. измененное значение для «комиссии» - «комиссия» -. 02,
2. «agent_code» не находится в выбранном «agent_code» таблицы «orders» с псевдонимом «a», которая удовлетворяет условию ниже:
3. «ord_amount» таблицы «orders» с псевдонимом «a» совпадает с «ord_amount» таблицы «orders» с псевдонимом «b», которая удовлетворяет условию ниже:
4. 'ord_date' псевдонимов 'a' и 'b' должны быть одинаковыми,
можно использовать следующий оператор SQL:
Код SQL:
UPDATE agent1
SET commission=commission-.02
WHERE agent_code NOT IN(
SELECT agent_code FROM orders a
WHERE ord_amount=(
SELECT ord_amount FROM orders b
WHERE a.ord_date=b.ord_date));
Обновление SQL с использованием подзапросов с 'IN' и min ()
Далее мы обсудим использование оператора IN и функции MIN () вместе с оператором UPDATE для внесения изменений в указанные столбцы.
Пример:
Пример таблицы: заказы
Пример таблицы: агент1
Чтобы обновить таблицу 'agent1' со следующими условиями -
1. измененное значение для «комиссии» - «комиссия» -. 02,
2. «agent_code» не находится в выбранном «agent_code» таблицы «orders» с псевдонимом «a», которая удовлетворяет условию ниже:
3. 'ord_amount' таблицы 'orders', названной псевдонимом 'a' , равен минимальному значению 'ord_amount' таблицы 'orders', названному псевдонимом 'b', которое удовлетворяет условию ниже:
4. 'ord_date' псевдонимов 'a' и 'b' должны быть одинаковыми,
можно использовать следующий оператор SQL:
Код SQL:
UPDATE agent1
SET commission=commission-.02
WHERE agent_code IN(
SELECT agent_code FROM orders a
WHERE ord_amount=(
SELECT MIN(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.
Предыдущий: Обновить столбцы с помощью функции суммы и сгруппировать по
Далее: SQL Удалить
Новый контент: Composer: менеджер зависимостей для PHP , R программирования