W Cat - SQL за 24 часа
Здесь есть возможность читать онлайн «W Cat - SQL за 24 часа» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Базы данных, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.
- Название:SQL за 24 часа
- Автор:
- Жанр:
- Год:неизвестен
- ISBN:нет данных
- Рейтинг книги:5 / 5. Голосов: 1
-
Избранное:Добавить в избранное
- Отзывы:
-
Ваша оценка:
- 100
- 1
- 2
- 3
- 4
- 5
SQL за 24 часа: краткое содержание, описание и аннотация
Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «SQL за 24 часа»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.
SQL за 24 часа — читать онлайн бесплатно полную книгу (весь текст) целиком
Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «SQL за 24 часа», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.
Интервал:
Закладка:
Базовый синтаксис соответствующего оператора должен быть следующим.
INSERT INTO имя_таблицы [ (столбец! [, столбец2 ]) ]
SELECT [ *| столбец1 [, столбец2 ]]
FROM таблица1 [, таблица2 ]
[ WHERE значение ОПЕРАЦИЯ значение ]
Вот пример использования оператора INSERT с подзапросом.
INSERT INTO RICH_EMPLOYEES
SELECT E.EMP_ID, E.LAST_NAME, E.FIRST_NAME EP.PAY_RATE
FROM EMPLOYEE_TBL E, EMPLOYEE_PAY_TBL EP
WHERE E.EMP_ID = EP.EMP_ID
AND EP.PAY_RATE > (SELECT PAY_RATE
FROM EMPLOYEE_PAY_TBL
WHERE E.EMP_ID = '220984332');
2 строки созданы.
Этот оператор INSERT вставляет значения EMP_ID, LAST_NAME, FIRST_NAME и PAY_RATE в таблицу RICH_EMPLOYEES для всех служащих, норма оплаты труда которых превышает норму оплаты труда служащего с табельным номером 220984332.
При использовании команд DML типа INSERT не забывайте об использовании команд COMMIT и ROLLBACK
Подзапросы можно использовать в операторе UPDATE. С помощью оператора UPDATE с подзапросом можно обновлять данные как одного, так и нескольких столбцов сразу.
Базовый синтаксис оператора следующий.
UPDATE таблица
SET имя_столбца [, имя_столбца ] =
(SELECT имя_столбца [,имя_столбца ] FROM таблица
[ WHERE ])
Рассмотрим примеры, разъясняющие использование оператора UPDATE с подзапросом. Сначала рассмотрим запрос, возвращающий табельные номера служащих из Индианаполиса. Как видите, таких служащих четыре.
SELECT EMP_ID
FROM EMPLOYEE_TBL
WHERE CITY = 'INDIANAPOLIS';
EMP_ID
442346889
313782439
220984332
443679012
4 строки выбраны.
Этот запрос будет использован в качестве подзапроса в следующем операторе UPDATE. Вот этот оператор UPDATE с подзапросом.
UPDATE EMPLOYEE_PAY_TBL
SET PAY_RATE = PAY_RATE * 1.1
WHERE EMP_ID IN (SELECT EMP_ID
FROM EMPLOYEE_TBL
WHERE CITY = 'INDIANAPOLIS');
4 строки обновлены.
Как и ожидалось, были обновлены данные четырех строк Здесь следует обратить внимание на то, что в отличие от примеров в предыдущих разделах в данном случае подзапрос возвращает несколько строк данных. Ввиду того, что ожидается получить от подзапроса несколько строк, используется ключевое слово IN, позволяющее сравнить данное значение со списком значений. При использовании для сравнения знака равенства было бы возвращено сообщение об ошибке.
Научитесь правильно выбирать операцию для обработки результатов подзапроса Например, знак равенства, используемый для сравнения выражения с одним значением, не годится для использования с подзапросом, возвращающим несколько строк данных
Подзапросы можно использовать в операторе DELETE. Базовый синтаксис оператора следующий.
DELETE FROM имя_таблицы
[ WHERE ОПЕРАЦИЯ [ значение ]
(SELECT имя_столбца
FROM имя_таблицы
[ WHERE ])
В следующем примере из таблицы EMPLOYEE_PAY_TBL удаляется запись с информацией о служащем по имени BRANDON GLASS. Табельный номер этого служащего не известен, но можно создать подзапрос, который найдет этот номер в таблице EMPLOYEEJTBL по значениям столбцов с именами (FIRST_NAME) и фамилиями (LAST_NAME) служащих.
DELETE FROM EMPLOYEE_PAY_TBL WHERE EMP_ID = (SELECT EMP_ID
FROM EMPLOYEE_PAY_TBL
WHERE LAST_NAME a 'GLASS '
AND FIRST_NAME = 'BRAHDON');
1 строка обновлена.
He забывайте использовать в операторах UPDATE и DELETE ключевое слово WHERE. Если последнее не использовать, будут обновлены или удалены данные всех столбцов 1За подробностями обратитесь к уроку 5, "Манипуляция данными"
Точно так же, как подзапрос можно вложить в главный запрос, подзапрос можно вложить и в подзапрос. В главном запросе подзапрос выполняется до выполнения главного, точно так же и в подзапросе вложенный в него подзапрос будет выполнен первым
По поводу имеющихся ограничений (если они есть вообще) на число вложений одних запросов в другие в рамках одного оператора обратитесь к документации по используемой вами реализации языка, поскольку такие ограничения для разных реализаций могут не совпадать
Базовый синтаксис для операторов, использующих вложенные подзапросы, должен быть следующим
SELECT имя_столбца [, имя_столбца ]
FROM таблица1 [, таблица2 ]
WHERE имя_столбца ОПЕРАЦИЯ (SELECT имя__столбца
FPOM таблица
WHERE имя_столбца ОПЕРАЦИЯ (SELECT имя_столбца FROM таблица
[WHEREимя_столбца ОПЕРАЦИЯ значение]))
В следующем примере используются два подзапроса, вложенные один в другой Требуется выяснить, какие покупатели заказали товаров на сумму большую, чем сумма цен всех товаров
SELECT CUST_ID, CUST_NAME
FROM CUSTOMER_TBL
WHERE CUST_ID IN (SELECT O.CUST_ID
FROM ORDERS_TBL O, PRODUCTS_TBL P WHERE 0 PROD_ID = P.PROD_ID
AND O.QTY * P.COST > (SELECT STJM(COST)
Читать дальшеИнтервал:
Закладка:
Похожие книги на «SQL за 24 часа»
Представляем Вашему вниманию похожие книги на «SQL за 24 часа» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.
Обсуждение, отзывы о книге «SQL за 24 часа» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.