ecosmak.ru

Insert в select oracle синтаксис. SQL запит INSERT INTO - наповнити базу даних інформацією

Команда додає рядки до таблицічи подання основної таблиці.

Синтаксис команди Sql INSERT

Синтаксис команди Insert


Основні ключові слова та параметри команди INSERT
  • schema- ідентифікатор повноважень, що зазвичай збігається з ім'ям деякого користувача
  • table view- ім'я таблиці, в яку рядки мають бути вставлені; якщо зазначено подання, то рядки вставляються до основної таблиці подання
  • subquery_1- підзапит, який сервер обробляє тим самим способом як подання
  • column- стовпець таблиці або подання, в який для кожного вставленого рядка вводиться значення фрази VALUESабо підзапит; якщо один із стовпців таблиці опускається з цього списку, значенням стовпця для вставленого рядка є значення за умовчанням стовпця, визначене під час створення таблиці. Якщо повністю опускається список стовпця, пропозиція VALUESабо запит повинен визначити значення для всіх стовпців у таблиці
  • VALUES- Визначає рядок значень, які будуть вставлені в таблицю або подання; значення має бути визначене у реченні VALUESдля кожного стовпця у списку стовпців
  • subquery_2- підзапит, який повертає рядки, що вставляють до таблиці; вибірковий список цього підзапиту повинен мати таку ж кількість стовпців, як у списку стовпців затвердження

Твердження із фразою VALUESдодає одиночний рядок до таблиці. Цей рядок містить значення, визначені фразою VALUES.
Твердження з підзапитомзамість фрази VALUESдодає до таблиці всі рядки, повернуті підзапитом. Сервер обробляє підзапиті вставляє кожний повернутий рядок до таблиці. Якщо підзапит не вибирає жодних рядків, сервер не вставляє жодних рядків у таблицю.
Підзапитможе звернутися до будь-якої таблиці або подання, включаючи цільову таблицю затвердження . Сервер призначає значення полям у нових рядках, заснованих на внутрішній позиції стовпців у таблиці та порядку значень фрази VALUESабо у списку вибору запиту. Якщо якісь стовпці пропущені у списку стовпців, сервер призначає їм значення за промовчанням, визначені під час створення таблиці. Якщо будь-який з цих стовпців має NOT NULL обмеження, то сервер повертає помилку, що вказує, що обмеження було порушено і скасовує затвердження INSERT.
При видачі затвердження INSERT включається будь-який INSERT - тригер, визначений таблиці.

INSERT INTO Приклад 1

INSERT INTO dept VALUES(50, «ПРОДУКЦІЯ», «САН-ФРАНЦІСКО»);

INSERT INTO Customers (city, cname, cnum) VALUES('London', 'Hoffman', 2001);

INSERT INTO Приклад 2
Нижченаведена команда копіює дані співробітників фірми, комісійні яких перевищують 25% доходу в таблицю bonus:

INSERT INTO bonus SELECT ename, job, sal, comm FROM emp WHERE comm > 0.25 * sal;

INSERT INTO Приклад 3
Якщо потрібно вставити NULL-значення, необхідно вказати його як звичайне значення так:

INSERT INTO Salespeople VALUES (1001, 'Peel',NULL,12);

INSERT INTO Приклад 4
Команду можна застосувати для того, щоб отримати значення з однієї таблиці та розмістити їх в іншій, скориставшись для цього запитом. Для цього достатньо замінити пропозицію VALUESна відповідний запит:

INSERT INTO Londonstaff SELECT * FROM Salespeople WHERE city = 'London';

MySQL INSERT

Для вставлення нових рядків у базу даних MySQL використовується команда INSERT, приклади команди наведені нижче:
INSERT INTO Приклад 1.
Вставте новий рядок у таблицю table_name.

INSERT INTO

INSERT INTO Приклад 2.
Вставка нового рядка в таблицю table_name із зазначенням вставки даних у потрібні колонки.

INSERT INTO table_name VALUES ('1','165','0','name');

У базі даних MySQLє можливість вставляти безліч нових рядків, використовуючи одну команду .
INSERT INTO Приклад 3.
Вставте кілька рядків у таблицю table_name.

INSERT INTO table_name (tbl_id, chislo, chislotwo, name) VALUES ('1','159','34','name1'), ('2','14','61','name2'), ('3 ','356','8','name3');

Ця інструкція додає один або кілька записів до таблиці (виконує запит на додавання).

Синтаксис

Запит на додавання кількох записів:

INSERT INTO кінцевий об'єкт [(поле1[, поле2[, ...]])]
SELECT [ джерело.]поле1[, поле2[, ...]
FROM вираз_таблиці

Запит на додавання одного запису:

INSERT INTO кінцевий об'єкт [(поле1[, поле2[, ...]])]
VALUES ( поле1[, поле2[, ...])

Інструкція INSERT INTO складається з наступних елементів:

Частина

Опис

кінцевий об'єкт

Ім'я таблиці чи запиту, куди додаються записи.

поле1, поле2

Після аргументу кінцевий об'єкт- імена полів, до яких додаються дані; після аргументу джерело- Імена полів, з яких витягуються дані.

зовнішня_база_даних

Шлях до зовнішньої бази даних. Опис шляху див. у статті, присвяченій пропозиції IN.

джерело

Ім'я таблиці або запиту, з якого копіюються записи.

вираз_таблиці

Одне чи кілька імен таблиць, у тому числі потрібно отримати записи. Цей аргумент може бути ім'я окремої таблиці, результуючий вираз, складений з використанням операцій INNER JOIN, LEFT JOIN або RIGHT JOIN, або збережений запит.

значення1, значення2

Значення, які будуть додані до певних полів нового запису. Кожне значення вставляється в поле, яке відповідає його положенню у списку: значення1додається в поле1нового запису, значення2- у поле2і т. д. Необхідно розділяти значення коми і укладати текстові поля в лапки (" ").

Зауваження

За допомогою інструкції INSERT INTO можна додати до таблиці один запис, використовуючи вказаний вище синтаксис. У цьому випадку вказуються імена та значення для кожного поля запису. Необхідно вказати всі поля запису, яким надаються значення, та відповідні значення. Якщо не вказати значення поля, йому буде надано значення за промовчанням або NULL. Записи додаються до кінця таблиці.

Інструкцією INSERT INTO також можна скористатися для додавання набору записів з іншої таблиці або запиту за допомогою пропозиції SELECT... FROM, як показано вище (див. синтаксис запиту на додавання декількох записів). У цьому випадку пропозиція SELECT задає поля для додавання до зазначеного кінцевий об'єкт.

Джерелоабо кінцевий об'єктможе бути таблицею чи запитом. Якщо запит, ядро ​​СУБД Microsoft Access додає записи до всіх таблиць, які він повертає.

Використання вказівки INSERT INTO не є обов'язковим. Якщо вона вказана, вона має передувати вказівки SELECT.

Якщо кінцева таблиця містить первинний ключ, переконайтеся, що значення, що додаються в одне або кілька полів первинного ключа, унікальні та відмінні від NULL; інакше записи не будуть додані.

Якщо записи додаються до таблиці з полем "Лічильник" і ви хочете змінити їх нумерацію, не вмикайте поле "Лічильник" у запит. Увімкніть поле "Лічильник" у запит, якщо потрібно зберегти вихідні значення з поля.

Додати записи до таблиці іншої бази даних можна за допомогою пропозиції IN.

Щоб створити таблицю, скористайтесь інструкцією SELECT... INTO для отримання запиту на створення таблиці.

Перед тим, як виконати запит на додавання, скористайтесь запитом на вибірку з такими ж умовами відбору, щоб за результатами визначення, які записи будуть додані.

Запит на додавання копіює записи з однієї або кількох таблиць до іншої таблиці. При цьому таблиці, що містять записи, що додаються, залишаються без змін.

Замість додавання записів з іншої таблиці можна встановити значення кожного поля в окремому новому записі за допомогою пропозиції VALUES. Якщо список полів опущений, у пропозицію VALUES необхідно включити відповідні значення кожного поля таблиці; в іншому випадку операція INSERT не буде виконана. Скористайтеся інструкцією INSERT INTO разом із пропозицією VALUES для кожного додаткового запису, який потрібно створити.

Всім привіт! У цій статті йтиметься про те, як можна додавати дані до таблиціу Microsoft SQL Server, якщо Ви вже хоч трохи знайомі з мовою T-SQL, то напевно зрозуміли, що зараз ми говоритимемо про інструкцію INSERT, а також про те, як її можна використовувати для додавання даних до таблиці.

Почнемо за традицією з невеликої теорії.

Інструкція INSERT у T-SQL

INSERT– це інструкція мови T-SQL, яка призначена додавання даних у таблицю, тобто. створення нових записів. Дану інструкцію можна використовувати як додавання одного рядка в таблицю, так масової вставки даних. Для виконання інструкції INSERT потрібен дозвіл на вставку даних ( INSERT) у цільову таблицю.

Існує кілька способів використання інструкції INSERT у частині даних, які потрібно вставити:

  • Перерахування конкретних значень для вставки;
  • Вказує набір даних у вигляді запиту SELECT;
  • Вказує набір даних у вигляді виклику процедури, яка повертає табличні дані.

Спрощений синтаксис

INSERT [таблиця] ( список стовпців, …) VALUES ( список значень, …) Або SELECT запит на вибіркуАбо EXECUTE процедура

  • INSERT INTO – це команда додавання даних до таблиці;
  • Таблиця – це ім'я цільової таблиці, куди необхідно вставити нові записи;
  • Список стовпців - це перелік імен стовпців таблиці, в яку будуть вставлені дані, розділені комами;
  • VALUES - це конструктор табличних значень, за допомогою якого ми вказуємо значення, які вставлятимемо в таблицю;
  • Список значень – це значення, які будуть вставлені, розділені комами. Вони перераховуються у порядку, у якому зазначені стовпці у списку стовпців;
  • SELECT - це запит на вибір даних для вставки в таблицю. Результуючий набір даних, який поверне запит, має відповідати списку стовпців;
  • EXECUTE – це виклик процедури отримання даних для вставки в таблицю. Результуючий набір даних, який поверне процедура, що зберігається, повинен відповідати списку стовпців.

Ось приблизно так і виглядає спрощений синтаксис інструкції INSERT INTO, в більшості випадків саме так Ви і додаватимете нові записи в таблиці.

Список стовпців, в які Ви вставлятимете дані, можна і не писати, у такому разі їх порядок буде визначений на основі фактичного порядку стовпців у таблиці. При цьому необхідно пам'ятати цей порядок, коли Ви вказуватимете значення для вставки або писати запит на вибірку. Особисто я Вам рекомендую все ж таки вказувати список стовпців, у які Ви плануєте додавати дані.

Також слід пам'ятати і те, що в списку стовпців і в списку значень, відповідно, повинні бути так звані обов'язкові стовпці, які не можуть містити значення NULL. Якщо їх не вказати, і при цьому стовпчик не має значення за замовчуванням, буде помилка.

Ще хотілося б відзначити, що тип даних значень, які Ви вставлятимете, повинен відповідати типу даних стовпця, в який буде вставлено це значення, ну або, хоча б, підтримував неявне перетворення. Але я раджу Вам контролювати тип даних ( формат) значень, як у списку значень, і у запиті SELECT.

Досить теорії, переходимо до практики.

Вихідні дані

Для того щоб додавати дані до таблиці, нам потрібна відповідно сама таблиця, давайте її створимо, і вже в неї будемо намагатися додавати записи.

Примітка! Всі приклади будуть виконані в Microsoft SQL Server 2016 Express.

CREATE TABLE TestTable( IDENTITY(1,1) NOT NULL, (100) NOT NULL, NOT NULL)

Наша тестова таблиця буде містити перелік товарів з ціною.

Також у прикладах ми будемо використовувати процедуру, яка повертає табличне значення, для додавання даних до таблиці, тому давайте її також створимо.

CREATE PROCEDURE TestProcedure AS BEGIN SELECT ProductName, Price FROM TestTable END

Для прикладу вона у нас повертатиме дані із щойно створеної таблиці TestTable.

Примітка!

Як Ви розумієте, читання даного матеріалу передбачає готівку певних знань з мови T-SQL, тому якщо Вам щось незрозуміло, рекомендую ознайомитися з такими матеріалами:

Приклад 1 – Додаємо новий запис до таблиці з використанням конструктора табличних значень

Спочатку давайте спробуємо додати один запис і відразу подивимося результат, тобто. напишемо запит на вибірку.

INSERT INTO TestTable(ProductName, Price) VALUES ("Комп'ютер", 100) GO SELECT * FROM TestTable

Ви бачите, що ми після назви таблиці перерахували через кому імена стовпців, в які ми будемо додавати дані, потім ми вказали ключове слово VALUESі в дужках також, у тому ж порядку, через кому написали значення, які ми хочемо вставити.

Після інструкції INSERT я написав інструкцію SELECT і поділив їх GO.

А тепер давайте уявімо, що нам потрібно додати кілька рядків. Ми для цього напишемо наступний запит.

INSERT INTO TestTable(ProductName, Price) VALUES ("Комп'ютер", 100), ("Клавіатура", 20), ("Монітор", 50) GO SELECT * FROM TestTable


Приклад 2 – Додаємо нові рядки до таблиці за допомогою запиту SELECT

Найчастіше виникає необхідність додавати багато даних у таблицю, наприклад, з урахуванням запиту вибірку, тобто. SELECT. Для цього замість VALUES нам лише потрібно вказати запит.

INSERT INTO TestTable(ProductName, Price) SELECT ProductName, Price FROM TestTable WHERE Id >


У даному прикладі ми написали запит SELECT, який повертає дані з таблиці TestTable, але не всі, а тільки ті, у яких ідентифікатор більше 2. А результат вставили все в таблицю TestTable.

Як приклад того, як можна додавати записи в таблицю без вказівки списку стовпців, давайте напишемо ще один запит на вставку даних, який зробить так само, як і запит вище, тільки в ньому не буде перерахування стовпців для вставки.

INSERT INTO TestTable SELECT ProductName, Price FROM TestTable WHERE Id > 2 GO SELECT * FROM TestTable


У даному випадку ми впевнені, що в таблиці TestTable перший стовпець це ProductName, а другий Price, тому ми можемо дозволити собі написати саме так. Але, знову повторюся, практично краще вказувати список стовпців.

Якщо Ви помітили, я у всіх прикладах не вказував стовпець Id, а він у нас є, помилки не виникло, оскільки цей стовпець із властивістю IDENTITY, він автоматично генерує ідентифікатори, тому в такий стовпець вставити дані просто не вийде.

Приклад 3 – Додаємо нові записи в таблицю з використанням процедури, що зберігається

Зараз давайте вставимо в таблицю дані, які нам поверне процедура, що зберігається. Сенс тут такий самий, замість VALUES та замість запиту ми вказуємо виклик процедури. Але як Ви розумієте, порядок і кількість стовпців, які повертаються процедурою, повинен строго співпадати зі списком стовпців для вставки ( навіть якщо список стовпців не вказано).

INSERT INTO TestTable(ProductName, Price) EXEC TestProcedure GO SELECT * FROM TestTable


Сподіваюся, що цей матеріал допоміг Вам розібратися з інструкцією INSERT INTO, А в мене все, поки що!

У попередніх розділах ми розглядали роботу з отримання даних із заздалегідь створених таблиць. Тепер настав час розібрати, яким чином ми можемо створювати/видаляти таблиці, додавати нові записи і видаляти старі. Для цих цілей у SQLіснують такі оператори, як: CREATE- Створює таблицю, ALTER- Змінює структуру таблиці, DROP- видаляє таблицю чи поле, INSERT- Додає дані в таблицю. Почнемо знайомство з цією групою операторів із оператора INSERT.

1. Додавання цілих рядків

Як видно з назви, оператор INSERTвикористовується для вставки (додавання) рядків у таблицю бази даних. Додавання можна здійснити кількома способами:

  • - додати один повний рядок
  • - додати частину рядка
  • - Додати результати запиту.

Отже, щоб додати новий рядок до таблиці, нам необхідно вказати назву таблиці, перерахувати назви колонок та вказати значення для кожної колонки за допомогою конструкції INSERT INTO назва_таблиці (поле1, поле2...) VALUES (значення1, значення2...). Розглянемо з прикладу.

INSERT INTO Sellers (ID, Address, City, Seller_name, Country) VALUES("6", "1st Street", "Los Angeles", "Harry Monroe", "USA")

Також можна змінювати порядок вказівки назв колонок, однак одночасно потрібно змінювати порядок значень у параметрі VALUES.

2. Додавання частини рядків

У попередньому прикладі під час використання оператора INSERTми явно відзначали імена шпальт таблиці. Використовуючи цей синтаксис, ми можемо пропустити деякі стовпці. Це означає, що ви вводите значення для одних стовпців, але не пропонуєте їх для інших. Наприклад:

INSERT INTO Sellers (ID, City, Seller_name) VALUES("6", "Los Angeles", "Harry Monroe")

У цьому прикладі ми не вказали значення для двох стовпців Addressі Country. Ви можете виключати деякі стовпці з оператора INSERT INTOякщо це дозволяє проводити визначення таблиці. У цьому випадку має дотримуватися одна з умов: цей стовпець визначений як такий, що допускає значення NULL(відсутність будь-якого значення) або визначення таблиці вказане значення за замовчуванням. Це означає, що, якщо не вказано жодне значення, буде використано значення за промовчанням. Якщо ви пропускаєте стовпець таблиці, яка не допускає появи у своїх рядках значень NULLі не має значення, визначеного для використання за умовчанням, СУБД видасть повідомлення про помилку, і цей рядок не буде додано.

3. Додавання відібраних даних

У попередніх прикладах ми вставляли дані до таблиць, прописуючи їх вручну в запиті. Проте оператор INSERT INTOдозволяє автоматизувати цей процес, якщо ми хочемо вставляти дані з іншої таблиці. Для цього в SQL існує така кострукція як INSERT INTO ... SELECT .... Дана конструкція дозволяє одночасно вибирати дані з однієї таблиці і вставити їх в іншу. Припустимо, ми маємо ще одну таблицю Sellers_EUз переліком продавців нашого товару в Європі і нам потрібно їх додати до загальної таблиці Sellers. Структура цих таблиць однакова (та сама кількість колонок і самі їх назви), проте інші дані. Для цього ми можемо прописати наступний запит:

INSERT INTO Sellers (ID, Address, City, Seller_name, Country) SELECTID, Address, City, Seller_name, Country FROM Sellers_EU

Потрібно звернути увагу на те, щоб значення внутрішніх ключів не повторювалися (поле ID), інакше станеться помилка. Оператор SELECTтакож може містити пропозиції WHEREдля фільтрації даних Також слід зазначити, що СУБД не звертає уваги на назви колонок, що містяться в операторі SELECT, для неї важливий лише порядок їх розташування. Тому дані у першому зазначеному стовпці, що були обрані через SELECT, будуть у будь-якому випадку заповнені в перший стовпець таблиці Sellers, вказаною після оператора INSERT INTOнезалежно від назви поля.

4. Копіювання даних з однієї таблиці до іншої

Часто під час роботи з базами даних виникає потреба у створенні копій будь-яких таблиць, із єдиною метою резервування чи модифікації. Щоб зробити повну копію таблиці в SQL, передбачений окремий оператор SELECT INTO. Наприклад, нам потрібно створити копію таблиці Sellers, потрібно буде прописати запит наступним чином:

SELECT * INTO Sellers_new FROM Sellers

На відміну від попередньої конструкції INSERT INTO ... SELECT ...коли дані додаються в існуючу таблицю, конструкція копіює дані в нову таблицю. Також можна сказати, що перша конструкція імпортує дані, а друга – експортує. При використанні конструкції SELECT ... INTO ... FROM ...слід враховувати таке:

  • - можна використовувати будь-які пропозиції в операторі SELECT, такі як GROUP BYі HAVING
  • - для додавання даних із кількох таблиць можна використовувати об'єднання
  • - Дані можна додати лише одну таблицю, незалежно від того, з скількох таблиць вони були взяті.

Крім інструкції SELECT, яка була розглянута раніше, мова маніпуляції даними DML (Data Manipulation Language) містить три інші інструкції: INSERT, UPDATE та DELETE. Подібно до інструкції SELECT ці три інструкції оперують або таблицями, або уявленнями. Ця стаття розглядає інструкцію INSERT, а дві інші інструкції розглядаються в наступній статті.

Інструкція INSERTвставляє рядки (або частини рядків) до таблиці. Існує дві різні форми цієї інструкції:

INSERT tab_name [(col_list)] DEFAULT VALUES | VALUES (( DEFAULT | NULL | expression ) [ ,...n]) INSERT INTO tab_name | view_name [(col_list)] (select_statement | execute_statement) Угоди щодо синтаксису

Перша форма інструкції дозволяє вставити в таблицю один рядок (або її частину). А друга форма інструкції INSERT дозволяє вставити в таблицю результуючий набір інструкції SELECT або процедури, що зберігається за допомогою інструкції EXECUTE. Процедура, що зберігається, повинна повертати дані для вставки в таблицю. Інструкція SELECT, що застосовується з інструкцією INSERT, може вибирати значення з іншої або тієї ж таблиці, в яку вставляються дані, за умови сумісності типів даних відповідних стовпців.

Для обох форм тип даних кожного значення, що вставляється, повинен бути сумісним з типом даних відповідного стовпця таблиці. Усі строкові та тимчасові дані мають бути укладені у лапки; чисельні значення укладати в лапки не потрібно.

Вставка одного рядка

Для обох форм інструкції INSERT явна вказівка ​​списку стовпців не є обов'язковою. Відсутність списку стовпців рівнозначно вказівкою всіх стовпців таблиці.

Параметр DEFAULT VALUESвставляє стандартні значення для всіх стовпців. У стовпці з типом даних TIMESTAMP або властивістю IDENTITY за замовчуванням вставляються значення автоматично створювані системою. Для стовпців інших типів даних вставляється відповідне ненульове значення за промовчанням, якщо таке є, або NULL в іншому випадку. Якщо для стовпця значення NULL не дозволено і для нього не визначено значення за промовчанням, виконання інструкції INSERT завершується помилкою та виводиться відповідне повідомлення.

У прикладі нижче показано вставлення рядків у таблицю Employee бази даних SampleDb, демонструючи використання інструкції INSERT для вставки невеликого обсягу даних у базу даних:

USE SampleDb; INSERT INTO Employee VALUES (34990, "Андрій", "Батонов", "d1"); INSERT INTO Employee VALUES (38640, "Олексій", "Васин", "d3");

Існує два різні способи вставки значень у новий рядок. Інструкція INSERT у прикладі нижче явно використовує ключове слово NULL і вставляє значення NULL у відповідний стовпець:

USE SampleDb; INSERT INTO Employee VALUES (34991, "Андрій", "Батонов", NULL);

Щоб вставити значення в деякі (але не всі) стовпці таблиці, зазвичай необхідно явно вказати ці стовпці. Не зазначені стовпці мають або дозволяти значення NULL, або для них має бути визначено значення за промовчанням.

USE SampleDb; INSERT INTO Employee(Id, FirstName, LastName) VALUES (34992, "Андрій", "Батонов");

Попередні два приклади рівнозначні. У таблиці Employee єдиним стовпцем, що дозволяє значення NULL, є стовпець DepartmentNumber, а всіх інших стовпців це значення було заборонено пропозицією NOT NULL в інструкції CREATE TABLE.

Порядок значень у пропозиції VALUESІнструкції INSERT можуть відрізнятися від порядку, зазначеного в інструкції CREATE TABLE. У такому разі їхній порядок повинен співпадати з порядком, у якому відповідні стовпці перераховані у списку стовпців. Нижче показаний приклад вставки даних у порядку, що відрізняється від вихідного:

USE SampleDb; INSERT INTO Employee(DepartamentNumber, LastName, Id, FirstName) VALUES ("d1", "Батонов", 34993, "Андрій");

Вставка кількох рядків

Друга форма інструкції INSERT вставляє в таблицю один або кілька рядків, вибраних підзапитом. У прикладі нижче показано вставлення рядків у таблицю, використовуючи другу форму інструкції INSERT. В даному випадку виконується запит щодо вибірки номерів та імен відділів, розташованих у Москві, та завантаження отриманого результуючого набору в нову таблицю, створену раніше.

Нова таблиця MoscowDepartment, що створюється в прикладі вище, має ті ж стовпці, що і існуюча таблиця Department, за винятком відсутнього стовпця Location. Підзапит в інструкції INSERT вибирає у таблиці Department усі рядки, для яких значення стовпця Location дорівнює "Москва", які потім вставляються у створену на початку запиту нову таблицю.

У прикладі нижче показано ще один спосіб вставки рядків у таблицю, використовуючи другу форму інструкції INSERT. В даному випадку виконується запит на вибірку табельних номерів, номерів проектів та дат початку роботи над проектом для всіх співробітників з посадою "Менеджер", які працюють над проектом p2 з наступним завантаженням отриманого результуючого набору до нової таблиці, що створюється на початку запиту:

USE SampleDb; CREATE TABLE ManagerTeam (EmpId INT NOT NULL, ProjectNumber CHAR (4) NOT NULL, EnterDate DATE); INSERT INTO ManagerTeam (EmpId, ProjectNumber, EnterDate) SELECT EmpId, ProjectNumber, EnterDate FROM Works_on WHERE Job = "Менеджер";

Перед вставкою рядків за допомогою інструкції INSERT таблиці MoscowDepartment та ManagerTeam (у прикладах вище) були порожніми. Якщо ж таблиця вже існувала та містила рядки з даними, то до неї було б додано нові рядки.

Завантаження...