SQL Удалить записи, используя подзапросы
SQL Удаление записей с подзапросами
На этой странице мы собираемся обсудить, как SUBQUERIES (оператор SELECT в другом операторе SELECT можно использовать в качестве подзапроса) вместе с командой SQL DELETE можно использовать для удаления.
Пример таблиц, связанных с этой страницей, показан ниже:
Пример таблицы: customer1
Пример таблицы: агенты
Образец таблицы: клиент
Пример таблицы: агент1
Пример таблицы: заказы
Пример:
Чтобы удалить строки из таблицы customer1 с соблюдением следующих условий:
1. 'agent_code' должен быть любым 'agent_code' из таблицы 'agent', который удовлетворяет условию ниже:
2. «рабочая_область» таблицы «агенты» должна быть «Лондон»,
можно использовать следующий оператор SQL:
Код SQL:
DELETE FROM customer1
WHERE agent_code=ANY(
SELECT agent_code FROM agents
WHERE working_area='London');
Выход:
SQL удаляет записи, используя подзапросы с псевдонимом
На этой странице мы собираемся обсудить, как псевдонимы таблиц (когда две или более таблиц используются в запросе, а затем псевдоним упрощает чтение и запись с коротким именем, которое следует после имени таблицы после ключевого слова FROM) используется с SUBQUERIES (оператор SELECT в другом операторе SELECT может использоваться как подзапрос), а с помощью подзапросов команда SQL DELETE может использоваться для удаления записей.
Пример:
Чтобы удалить строки из таблицы 'agent1' со следующими условиями -
1. 'da' и 'cu' являются псевдонимами для таблицы 'agent1' и 'customer'
2. проверить наличие подзапроса верно или ложно. который удовлетворяет условию ниже:
3. «класс» таблицы «клиент» должен быть 3,
4. 'agent_code' таблицы 'agent1' и 'agent_code' таблицы 'customer' не должны совпадать,
можно использовать следующий оператор SQL:
Код SQL:
DELETE FROM agent1 da
WHERE EXISTS(
SELECT * FROM customer cu
WHERE grade=3
AND da.agent_code<>cu.agent_code);
Выход:
SQL удаляет записи, используя подзапросы с псевдонимом и IN
На этой странице мы собираемся обсудить, как строки могут быть удалены из таблицы с помощью оператора SQL DELETE с использованием оператора IN и SUBQUERIES.
Пример:
Чтобы удалить строки из таблицы 'agent1' со следующими условиями -
1. «da» и «cu» - это псевдонимы таблиц «agent1» и «customer»,
2. проверьте число 3 в результате подзапроса, который удовлетворяет условию ниже:
3. 'agent_code' таблицы 'agent1' и 'agent_code' таблицы 'customer' не должны совпадать,
можно использовать следующий оператор SQL:
Код SQL:
DELETE FROM agent1 da
WHERE 3 IN(
SELECT grade FROM customer cu
WHERE agent1.agent_code<>customer.agent_code);
Выход:
SQL удаляет записи, используя подзапросы с псевдонимом и MIN
На этой странице мы собираемся обсудить, как можно удалять строки из таблицы с помощью оператора SQL DELETE вместе с функцией SQL MIN ().
Пример:
Чтобы удалить строки из таблицы 'agent1' со следующими условиями -
1. Таблица 'orders' используется как псевдоним 'a' и псевдоним 'b',
2. 'agent_code' для 'agent1' должен быть внутри 'agent_code' в псевдониме 'a', который удовлетворяет условию ниже:
i) «ord_amount» псевдонима «a» должно быть равно минимальному «ord_amount» псевдонима «b», которое удовлетворяет условию ниже:
а) "ord_date" псевдонима "a" и псевдонима "b" должны быть равны,
можно использовать следующий оператор SQL:
Код SQL:
DELETE FROM agent1
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 удаляет записи, используя подзапросы с псевдонимами и MIN и COUNT
На этой странице мы собираемся обсудить, как можно удалять строки из таблицы с помощью оператора SQL DELETE вместе с функциями SQL MIN () и COUNT ().
Пример:
Чтобы удалить строки из таблицы 'agent1' со следующими условиями -
1. Таблица 'orders' используется как псевдоним 'a' и псевдоним 'b'
2. 'agent_code' для 'agent1' должен быть внутри 'agent_code' в псевдониме 'a', который удовлетворяет условию ниже:
i) «ord_amount» псевдонима «a» должно быть равно минимальному «ord_amount» псевдонима «b», которое удовлетворяет условию ниже:
a) "ord_date" псевдонима "a" и псевдонима "b" должны быть равны
ii) число 1 должно быть меньше числа псевдонима формы "ord_num ", которое удовлетворяет условию ниже:
а) "ord_date" псевдонима "a" и псевдонима "b" должны быть равны,
можно использовать следующий оператор SQL:
Код SQL:
DELETE FROM agent1
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)
AND 1<(
SELECT COUNT(ord_num) FROM orders b
WHERE a.ord_date=b.ord_date));
Выход:
Выводы указанного оператора SQL, показанного здесь, взяты с использованием Oracle Database 10g Express Edition.
Смотрите нашу базу данных моделей
Упражнения по 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 Удалить
Далее: SQL СОЕДИНЕНИЕ Введение
Новый контент: Composer: менеджер зависимостей для PHP , R программирования