Меню

Sql запрос новая таблица

Sql запрос новая таблица

Создание таблицы в SQL

Для создания таблиц используется оператор CREATE TABLE.

Язык sql создание таблиц

Для примера используем ранее созданные таблицы.
Итак, в результате в базе данных Institute мы собираемся получить следующие таблицы:

Используем следующие правила:

  1. имя таблицы указывается после ключевого слова CREATE TABLE (если имя состоит из нескольких слов, то его следует заключить в одинарные кавычки);
  2. далее в круглых скобках следуют имена столбцов таблицы (полей), после которых указывается тип данных, которому будет принадлежать поле;
  3. не обязательно: затем указывается может ли поле содержать пустые значения ( NULL — может быть пустым или NOT NULL — обязательно для заполнения);
  4. одно из полей назначается первичным ключом ( Primary key );
  5. поля отделяются запятыми.

Первая таблица называется teachers , соответственно первая строка кода:

CREATE TABLE `teachers` ( . )

Название таблицы может быть написано и без кавычек, так как состоит из одного слова.

Далее создаем поле id , тип данных которого — целые числа (ограничим их одиннадцатью INT(11) ), поле обязательно для заполнения, поэтому добавим NOT NULL :

`id` INT(11) NOT NULL,

Поле name будет строковым, ограничим его в 25 символов ( VARCHAR(25) ), поле тоже обязательно для заполнения, поэтому добавим NOT NULL :

`name` VARCHAR(25) NOT NULL,

Поле zarplata , тип данных которого — целые числа (ограничим их одиннадцатью INT(11) ). То же самое касается поля premia :

`zarplata` INT(11), `premia` INT(11),

После перечисления всех полей указываем ключевое поле:

Получаем код создания таблицы teachers :

CREATE TABLE `teachers` ( `id` INT(11) NOT NULL, `name` VARCHAR(25) NOT NULL, `zarplata` INT(11), `premia` INT(11), PRIMARY KEY (`id`) );

Проверить результат можно в сервисе онлайн визуализации схемы базы данных https://dbdesigner.net/, указания по работе с сервисом можно прочитать здесь.

Для заполнения таблицы данными используется оператор INSERT языка SQL.

INSERT INTO teachers VALUES (1, ‘Иванов’,1,10000,500), (2, ‘Петров’,1,15000,1000) , (3, ‘Сидоров’,1,14000,800), (4,’Боброва’,1,11000,800);

Обновление таблиц: удаление и добавление полей

Обновление таблиц выполняется при помощи ключевых слов sql ALTER TABLE . Обновляя таблицу можно:

  • удалять поля
  • добавлять поля

    Добавление поля в SQL таблицу, ADD

ALTER TABLE teachers ADD phone CHAR (20);

Протестируем в сервисе http://sqlfiddle.com/ (инструкция по использованию сервиса здесь).
Добавим код в левое окно:

CREATE TABLE `teachers` ( `id` INT(11) NOT NULL, `name` VARCHAR(25) NOT NULL, `zarplata` INT(11), `premia` INT(11), PRIMARY KEY (`id`) ); ALTER TABLE teachers ADD phone CHAR (20); INSERT INTO teachers VALUES (1, ‘Иванов’,10000,500,222222), (2, ‘Петров’,15000,1000,245322) , (3, ‘Сидоров’,14000,800,233222), (4,’Боброва’,11000,800,263222);

а в правое окно:

select * from teachers;

 sql alter table

В итоге получаем:

Удаление поля из SQL таблицы, DROP COLUMN

ALTER TABLE teachers DROP COLUMN phone

CREATE TABLE `teachers` ( `id` INT(11) NOT NULL, `name` VARCHAR(25) NOT NULL, `zarplata` INT(11), `premia` INT(11), `phone` char(20), PRIMARY KEY (`id`) ); ALTER TABLE teachers DROP COLUMN phone; INSERT INTO teachers VALUES (1, ‘Иванов’,10000,500), (2, ‘Петров’,15000,1000), (3, ‘Сидоров’,14000,800), (4,’Боброва’,11000,800);

Источник



Инструкция SELECT INTO в T-SQL или как создать таблицу на основе SQL запроса?

Если у Вас возникала необходимость сохранить результирующий набор данных, который вернул SQL запрос, то данная статья будет Вам интересна, так как в ней мы рассмотрим инструкцию SELECT INTO, с помощью которой в Microsoft SQL Server можно создать новую таблицу и заполнить ее результатом SQL запроса.

Читайте также:  Футбол россии таблица стадион

Начнем мы, конечно же, с описания самой инструкции SELECT INTO, а затем перейдем к примерам.

  1. Инструкция SELECT INTO в Transact-SQL
  2. Важные моменты про инструкцию SELECT INTO
  3. Примеры использования SELECT INTO
  4. Исходные данные
  5. Пример 1 – Создание таблицы с помощью инструкции SELECT INTO с объединением данных
  6. Пример 2 – Создание временной таблицы с помощью инструкции SELECT INTO с группировкой данных

Инструкция SELECT INTO в Transact-SQL

SELECT INTO – инструкция в языке в T-SQL, которая создает новую таблицу и вставляет в нее результирующие строки из SQL запроса. Структура таблицы, т.е. количество и имена столбцов, а также типы данных и свойства допустимости значений NULL, будут на основе столбцов (выражений), указанных в списке выбора из источника в инструкции SELECT. Обычно инструкция SELECT INTO используется для объединения в одной таблице данных из нескольких таблиц, представлений, включая какие-то расчетные данные.

Для того чтобы использовать инструкцию SELECT INTO требуется разрешение CREATE TABLE в базе данных, в которой будет создана новая таблица.

Инструкция SELECT INTO имеет два аргумента:

  • new_table — имя новой таблицы;
  • filegroup – файловая группа. Если аргумент не указан, то используется файловая группа по умолчанию. Данная возможность доступна начиная с Microsoft SQL Server 2017.

Заметка! Начинающим рекомендую посмотреть мой видеокурс по T-SQL.

Важные моменты про инструкцию SELECT INTO

  • Инструкцию можно использовать для создания таблицы на текущем сервере, на удаленном сервере создание таблицы не поддерживается;
  • Заполнить данными новую таблицу можно как с текущей базы данных и текущего сервера, так и с другой базы данных или с удаленного сервера. Например, указывать полное имя базы данных в виде база_данных.схема.имя_таблицы или в случае с удаленным сервером, связанный_сервер.база_данных.схема.имя_таблицы;
  • Столбец идентификаторов в новой таблице не наследует свойство IDENTITY, если: инструкция содержит объединение (JOIN, UNION), предложение GROUP BY, агрегатную функцию, также, если столбец идентификаторов является частью выражения, получен из удаленного источника данных или встречается более чем один раз в списке выбора. Во всех подобных случаях столбец идентификаторов не наследует свойство IDENTITY и создается как NOT NULL;
  • С помощью инструкции SELECT INTO нельзя создать секционированную таблицу, даже если исходная таблица является секционированной;
  • В качестве новой таблицы можно указать обычную таблицу, а также временную таблицу, однако нельзя указать табличную переменную или возвращающий табличное значение параметр;
  • Вычисляемый столбец, если такой есть в списке выбора инструкции SELECT INTO, в новой таблице он становится обычным, т.е. не вычисляемым;
  • SELECT INTO нельзя использовать вместе с предложением COMPUTE;
  • С помощью SELECT INTO в новую таблицу не переносятся индексы, ограничения и триггеры, их нужно создавать дополнительно, после выполнения инструкции, если они нужны;
  • Предложение ORDER BY не гарантирует, что строки в новой таблице будут вставлены в указанном порядке.
  • В новую таблицу не переносится атрибут FILESTREAM. Объекты BLOB FILESTREAM в новой таблице будут как объекты BLOB типа varbinary(max) и имеют ограничение в 2 ГБ;
  • Объем данных, записываемый в журнал транзакций во время выполнения операций SELECT INTO, зависит от модели восстановления. В базах данных, в которых используется модель восстановления с неполным протоколированием, и простая модель, массовые операции, к которым относится SELECT INTO, минимально протоколируются. За счет этого инструкция SELECT INTO может оказаться более эффективней, чем отдельные инструкции по созданию таблицы и инструкции INSERT по заполнение ее данными.
Читайте также:  Как вставить обрамление таблицы

Примеры использования SELECT INTO

Все примеры я буду выполнять в СУБД Microsoft SQL Server 2016 Express.

Исходные данные

Для начала давайте создадим две таблицы и заполним их данными, эти таблицы мы и будем объединять в примерах.

Скриншот 1

Пример 1 – Создание таблицы с помощью инструкции SELECT INTO с объединением данных

Давайте представим, что нам необходимо объединить две таблицы и сохранить полученный результат в новую таблицу (например, нам нужно получить товары с названием категории, к которой они относятся).

Скриншот 2

В итоге мы создали таблицу с названием TestTable3 и заполнили ее объединёнными данными.

Пример 2 – Создание временной таблицы с помощью инструкции SELECT INTO с группировкой данных

Сейчас давайте, допустим, что нам нужны сгруппированные данные, например, информация о количестве товаров в определенной категории, при этом эти данные нам нужно сохранить во временную таблицу, например, эту информацию мы будем использовать только в SQL инструкции, поэтому нам нет необходимости создавать полноценную таблицу.

Скриншот 3

Как видим, у нас получилось создать временную таблицу #TestTable и заполнить ее сгруппированными данными.

Вот мы с Вами и рассмотрели инструкцию SELECT INTO в языке T-SQL, всем тем, кто только начинает свое знакомство с языком SQL, рекомендую прочитать книгу «SQL код» – это самоучитель по языку SQL, которую написал я, и в которой я подробно, и в то же время простым языком, рассказываю о языке SQL, а у меня на этом все, пока!

Заметка! Для профессионального изучения языка T-SQL рекомендую посмотреть мои видеокурсы по T-SQL.

Источник

SQL — создание таблицы

Дата публикации: 2017-11-27

SQL — создание таблицы

От автора: создание таблицы SQL включает в себя присвоение имени таблицы и определение ее столбцов и типа данных для каждого столбца.

Для создания новой таблицы используется инструкция CREATE TABLE.

Синтаксис

Основной синтаксис инструкции CREATE TABLE выглядит следующим образом:

Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

CREATE TABLE — это ключевое слово, сообщающее системе баз данных, что вы хотите сделать. В данном случае мы хотим создать новую таблицу. После оператора CREATE TABLE указывается уникальное имя или идентификатор таблицы.

Затем в скобках указывается список, определяющий каждый столбец в таблице и тип данных для него. Чтобы вам было понятнее, давайте рассмотрим следующий пример.

Копию существующей таблицы можно создать с помощью комбинации инструкций CREATE TABLE и SELECT. По следующей ссылке вы можете найти полную информацию, как Создать таблицу используя другую таблицу

Пример

В следующем примере мы создаем таблицу CUSTOMERS с идентификатором в качестве первичного ключа, а NOT NULL — это ограничения, указывающие, что эти поля не могут содержать значение NULL при создании записей в этой таблице:

Читайте также:  Современные политические идеологии таблица социализм

Источник

SQL урок 0 . Язык sql создание таблиц

Создание таблицы в SQL

Для создания таблиц используется оператор CREATE TABLE.

Язык sql создание таблиц

Для примера используем ранее созданные таблицы.
Итак, в результате в базе данных Institute мы собираемся получить следующие таблицы:

Используем следующие правила:

  1. имя таблицы указывается после ключевого слова CREATE TABLE (если имя состоит из нескольких слов, то его следует заключить в одинарные кавычки);
  2. далее в круглых скобках следуют имена столбцов таблицы (полей), после которых указывается тип данных, которому будет принадлежать поле;
  3. не обязательно: затем указывается может ли поле содержать пустые значения ( NULL — может быть пустым или NOT NULL — обязательно для заполнения);
  4. одно из полей назначается первичным ключом ( Primary key );
  5. поля отделяются запятыми.

Первая таблица называется teachers , соответственно первая строка кода:

CREATE TABLE `teachers` ( . )

Название таблицы может быть написано и без кавычек, так как состоит из одного слова.

Далее создаем поле id , тип данных которого — целые числа (ограничим их одиннадцатью INT(11) ), поле обязательно для заполнения, поэтому добавим NOT NULL :

`id` INT(11) NOT NULL,

Поле name будет строковым, ограничим его в 25 символов ( VARCHAR(25) ), поле тоже обязательно для заполнения, поэтому добавим NOT NULL :

`name` VARCHAR(25) NOT NULL,

Поле zarplata , тип данных которого — целые числа (ограничим их одиннадцатью INT(11) ). То же самое касается поля premia :

`zarplata` INT(11), `premia` INT(11),

После перечисления всех полей указываем ключевое поле:

Получаем код создания таблицы teachers :

CREATE TABLE `teachers` ( `id` INT(11) NOT NULL, `name` VARCHAR(25) NOT NULL, `zarplata` INT(11), `premia` INT(11), PRIMARY KEY (`id`) );

Проверить результат можно в сервисе онлайн визуализации схемы базы данных https://dbdesigner.net/, указания по работе с сервисом можно прочитать здесь.

Для заполнения таблицы данными используется оператор INSERT языка SQL.

INSERT INTO teachers VALUES (1, ‘Иванов’,1,10000,500), (2, ‘Петров’,1,15000,1000) , (3, ‘Сидоров’,1,14000,800), (4,’Боброва’,1,11000,800);

Обновление таблиц: удаление и добавление полей

Обновление таблиц выполняется при помощи ключевых слов sql ALTER TABLE . Обновляя таблицу можно:

  • удалять поля
  • добавлять поля

    Добавление поля в SQL таблицу, ADD

ALTER TABLE teachers ADD phone CHAR (20);

Протестируем в сервисе http://sqlfiddle.com/ (инструкция по использованию сервиса здесь).
Добавим код в левое окно:

CREATE TABLE `teachers` ( `id` INT(11) NOT NULL, `name` VARCHAR(25) NOT NULL, `zarplata` INT(11), `premia` INT(11), PRIMARY KEY (`id`) ); ALTER TABLE teachers ADD phone CHAR (20); INSERT INTO teachers VALUES (1, ‘Иванов’,10000,500,222222), (2, ‘Петров’,15000,1000,245322) , (3, ‘Сидоров’,14000,800,233222), (4,’Боброва’,11000,800,263222);

а в правое окно:

select * from teachers;

 sql alter table

В итоге получаем:

Удаление поля из SQL таблицы, DROP COLUMN

ALTER TABLE teachers DROP COLUMN phone

CREATE TABLE `teachers` ( `id` INT(11) NOT NULL, `name` VARCHAR(25) NOT NULL, `zarplata` INT(11), `premia` INT(11), `phone` char(20), PRIMARY KEY (`id`) ); ALTER TABLE teachers DROP COLUMN phone; INSERT INTO teachers VALUES (1, ‘Иванов’,10000,500), (2, ‘Петров’,15000,1000), (3, ‘Сидоров’,14000,800), (4,’Боброва’,11000,800);

Источник

Adblock
detector