Select into from select sql: SQL SELECT INTO Statement
Содержание
sql — ВЫБЕРИТЕ ИСПОЛЬЗОВАНИЕ UNION QUERY
Задавать вопрос
спросил
Изменено
3 года, 4 месяца назад
Просмотрено
166 тысяч раз
Я хочу создать новую таблицу в SQL Server со следующим запросом. Я не могу понять, почему этот запрос не работает.
Query1: Работает
SELECT * FROM TABLE1 СОЮЗ ВЫБЕРИТЕ * ИЗ ТАБЛИЦЫ 2
Запрос2: не работает.
Ошибка: Сообщение 170, Уровень 15, Состояние 1, Строка 7
Строка 7: Неправильный синтаксис рядом с ')'.
ВЫБЕРИТЕ * В [NEW_TABLE] ОТ ( ВЫБЕРИТЕ * ИЗ ТАБЛИЦЫ 1 СОЮЗ ВЫБЕРИТЕ * ИЗ ТАБЛИЦЫ 2 )
Спасибо!
- sql
- sql-server
- tsql
- union
- производная таблица
Вы должны определить псевдоним таблицы для производной таблицы в SQL Server:
ВЫБОР х. * В [NEW_TABLE] ИЗ (ВЫБРАТЬ * ИЗ ТАБЛИЦЫ1 СОЮЗ ВЫБЕРИТЕ * ИЗ ТАБЛИЦЫ2) x
«x» — псевдоним таблицы в этом примере.
2
Вы также можете попробовать:
создать таблицу new_table как выберите * из таблицы1 союз выберите * из таблицы2
0
ВСТАВИТЬ В #Temp1 ВЫБЕРИТЕ значение1, значение2 ИЗ ТАБЛИЦЫ 1 СОЮЗ ВЫБЕРИТЕ значение1, значение2 ИЗ ТАБЛИЦЫ 2
1
Вот один рабочий синтаксис для SQL Server 2017:
USE [] ИДТИ ВЫБЕРИТЕ * В НОВУЮ ТАБЛИЦУ ОТ <имя-таблицы1> СОЮЗ ВСЕХ ВЫБЕРИТЕ * ИЗ <имя-таблицы2>
выбрать * в новую_таблицу из таблицы_A СОЮЗ Выбирать * Из таблицы_B
Это работает, только если Table_A и Table_B имеют одинаковые схемы
1
Зарегистрируйтесь или войдите в систему
Зарегистрируйтесь с помощью Google
Зарегистрироваться через Facebook
Зарегистрируйтесь, используя адрес электронной почты и пароль
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания и подтверждаете, что прочитали и поняли нашу политику конфиденциальности и кодекс поведения.
Snowflake SQL — SELECT INTO или аналогичный
- Автор сообщения: Naveen (NNK)
- Категория сообщения: Snowflake
- Последнее изменение сообщения: 27 января 2023
Распространите любовь
Snowflake SQL не имеет оператора «SELECT INTO», однако вы можете использовать оператор «CREATE TABLE as SELECT» для создания таблицы путем копирования или дублирования существующей таблице или на основе результата запроса SELECT.
Если у вас традиционный опыт работы с SQL, вы должны быть знакомы с оператором « SELECT INTO
», который создает новую таблицу и копирует данные из выбранной таблицы в новую таблицу,
Аналогично, Snowflake имеет CREATE TABLE as SELECT
(также называется CTAS), который создает новую таблицу на основе результата запроса SELECT
.
Используя это, вы можете сделать следующее. обратите внимание, что все они создают таблицу вместе с данными.
- Дублировать таблицу из существующей таблицы со всеми столбцами и строками
- Создать таблицу с выбранными столбцами из существующей таблицы
- Создать таблицу, изменив имена столбцов и типы данных существующей таблицы
- Создайте таблицу с результатом запроса на выборку.
SQL Server-SO: практическое решение 1
Пожалуйста, включите JavaScript
SQL Server-SO: практическое решение 1
CREATE TABLE as SELECT Syntax
Вот упрощенная версия CREATE TABLE as SELECT 90 020 синтаксис.
СОЗДАЙТЕ [ИЛИ ЗАМЕНИТЕ] ТАБЛИЦУ [имя_базы_данных].[схема]. [столбцы, разделенные запятыми, с типом] AS SELECT [столбцы, разделенные запятыми] из [имя_базы_данных].[схема]. [ГДЕ ] -------
Предположим, у вас есть база данных « EMPLOYEE
» и схема « PUBLIC
» с таблицей « EMP
». И таблица имеет следующую структуру. Мы используем эту таблицу, чтобы объяснить на примерах.
SQL-запрос Snowflake SELECT * FROM EMPLOYEE.PUBLIC.EMP возвращает содержимое таблицы EMP
.
Дублировать таблицу из существующей таблицы
Ниже SQL-запрос создать таблицу EMP_COPY
путем дублирования структуры таблицы и копирования всех данных из ЭМП
табл.
CREATE TABLE EMP_COPY как SELECT * FROM EMPLOYEE.PUBLIC.EMP
Создать таблицу с выбранными столбцами из существующей таблицы
Если вы хотите создать новую таблицу с выбранными столбцами, вы можете сделать это, указав имена столбцов в операторе выбора.
CREATE TABLE EMP_SEL_COL as SELECT FNAME, DEPARTMENT, SALARY FROM EMPLOYEE.PUBLIC.EMP
Это создает новую таблицу EMP_SEL_COL
со столбцами FNAME
, ОТДЕЛ
, ЗАРПЛАТА
и копирует данные в эти столбцы из таблицы EMP
.
Создайте таблицу, изменив имена столбцов и типы данных
В этом запросе я хотел бы показать, как создать таблицу, изменив имена столбцов и типы данных. При этом вам нужно быть осторожным, так как изменение типов данных иногда также приводит к потере данных.
CREATE TABLE EMP_COL_CHANGE (FULL_NAME,DEPT STRING,SALARY) as SELECT FNAME,DEPARTMENT,SALARY FROM EMPLOYEE.PUBLIC.EMP
Здесь мы меняем FNAME
на FULL_NAME
и DEPARTMENT
на DEPT
вместе с типом данных с float на varchar/string
Создаем таблицу с результатом запроса на выборку
9 0002 Использование CREATE TABLE в качестве SELECT
вы также можете запустить любой квалифицированный оператор выбора и создать таблицу с результатом запроса.
CREATE TABLE EMP_COPY как SELECT * FROM EMPLOYEE.PUBLIC.EMP, где DEPARTMENT=10
Вывод
В этой статье вы узнали, как создать новую таблицу путем копирования или дублирования существующей таблицы или создать новую таблицу с результатом запроса на выборку.