如果要将一个 SQL 表的数据复制到同一 SQL Server 中的另一个 SQL 表中,则可以通过 SQL 中的 SELECT INTO 语句来实现。
SQL语言中的 SELECT INTO 语句将现有表中的内容复制到新表中。SQL 使用现有表的结构创建新表。
SQL 中 SELECT INTO 语句的语法
SELECT * INTO New_table_name FROM old_table_name;
SQL 中的 SELECT INTO 语句示例
在本文中,我们采用了以下三个不同的 SQL 示例,它们将帮助您在 SQL 中如何将一个表的内容复制到另一个表中:
示例 :在此示例中,我们有一个名为Cars的表,其中包含三列:
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表:Car
- 假设您要将上述 Car 表的内容复制到新表Car_Details 中。为此,您必须在 SQL 中键入以下查询:
SELECT * INTO Car_Details FROM Cars;
- 让我们检查一下Car_Details表是否在数据库中创建成功:
SELECT * FROM Car_Details;
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表: Car_Details
SQL 中带有 WHERE 子句的 SELECT INTO 语句的语法
SELECT * INTO New_table_name FROM old_table_name WHERE [ condition ] ;
SQL 中带有 WHERE 子句的 SELECT INTO 语句示例
在这里,我们采取了以下三个不同的 SQL 示例,这将帮助您在 SQL 中如何将一个表的内容复制到另一个具有特定条件的表中:
示例:在此示例中,我们有一个名为Cars的表,其中包含三列:
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | Black | 10,85,000 |
Hyundai Venue | Black | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表: Cars
- 假设我们只想复制那些颜色为黑色的汽车的记录。为此,我们必须在 SQL 中键入以下查询:
SELECT * INTO Black_Car_Details FROM Cars WHERE Car_Color = 'Black';
- 让我们检查一下Black_Car_Details表是否在数据库中创建成功:
SELECT * FROM Black_Car_Details;
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | Black | 10,85,000 |
Hyundai Venue | Black | 9,50,000 |
Kia Seltos | Black | 8,00,000 |
表: Black_Car_Details
SQL 临时表
SQL Server 引入了临时表的概念。它以多种方式帮助开发人员:
临时表可以在运行时创建,可以做普通表可以做的各种操作。这些临时表是在 tempdb 数据库中创建的。
根据行为和范围,有两种类型的临时表。
- 本地临时表
- 全局临时表
本地临时表
本地临时表仅在当前连接时间可用。当用户与实例断开连接时,它会自动删除。它以井号 (#) 符号开头。
CREATE TABLE #local temp table (
User id int,
Username varchar (50),
User address varchar (150)
)
Glo
全局临时表
全局临时表名称以双哈希 (##) 开头。一旦这个表被创建,它就像一个永久的表。它始终为所有用户准备好,并且在整个连接被撤销之前不会被删除。
CREATE TABLE ##new global temp table (
User id int,
User name varchar (50),
User address varchar (150)
)
SQL 修改表结构
SQL语言中的 ALTER TABLE 语句允许您添加、修改和删除现有表的列。此语句还允许数据库用户在现有表上添加和删除各种 SQL 约束。
任何用户也可以使用此语句更改表的名称。
ALTER TABLE ADD Column 语句
在许多情况下,您可能需要在现有表中添加列。您可以使用 ADD 关键字轻松添加单列和多列,而不是再次创建整个表或数据库。
ALTER TABLE ADD Column 语法
ALTER TABLE table_name ADD column_name column-definition;
上述语法仅允许您向现有表添加单个列。如果要在单个 SQL 语句中向表中添加多个列,请使用以下语法:
ALTER TABLE table_name
ADD (column_Name1 column-definition,
column_Name2 column-definition,
.....
column_NameN column-definition);
ALTER TABLE ADD Column 示例
在这里,我们采用了以下两个不同的 SQL 示例,将帮助您如何使用 ALTER TABLE 语句在现有表中添加单列和多列:
示例:我们以一个名为Cars 的表为例:
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表:Car
- 假设您要在上表中添加新列 Car_Model。为此,您必须在 SQL 中键入以下查询:
ALTER TABLE Cars ADD Car_Model Varchar(20);
此语句会将 Car_Model 列添加到 Cars 表中。
ALTER TABLE MODIFY Column 语句
MODIFY 关键字用于更改现有表的列定义。
ALTER TABLE MODIFY Column 语法
ALTER TABLE table_name MODIFY column_name column-definition;
此语法仅允许您修改现有表的单个列。如果要在单个 SQL 语句中修改表的多个列,请使用以下语法:
ALTER TABLE table_name
MODIFY (column_Name1 column-definition,
column_Name2 column-definition,
.....
column_NameN column-definition);
ALTER TABLE MODIFY Column 示例
在这里,我们采用了以下两个不同的 SQL 示例,将帮助您如何使用 ALTER TABLE 语句修改现有表的单列和多列:
示例:我们以一个名为Cars 的表为例:
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表: Cars
- 假设您要修改上表的Car_Color列的数据类型。为此,您必须在 SQL 中键入以下查询:
ALTER TABLE Cars ADD Car_Color Varchar(50);
ALTER TABLE DROP Column 语句
在许多情况下,您可能需要从现有表中删除列。您可以使用 DROP 关键字来删除列,而不是删除整个表或数据库。
ALTER TABLE DROP Column 语法
ALTER TABLE table_name DROP Column column_name ;
ALTER TABLE DROP Column 示例
在这里,我们采用了以下两个不同的 SQL 示例,它们将帮助您如何使用 ALTER TABLE 语句从现有表中删除列:
示例:我们以一个名为Cars 的表为例:
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表: Cars
- 假设您想从上表中删除 Car_Color 列。为此,您必须在 SQL 中键入以下查询:
ALTER TABLE Cars DROP COLUMN Car_Color ;
- 让我们使用以下语句检查 Car_Color 列是否已从表中删除:
SELECT * FROM Cars;
Car Name | Car Cost |
---|---|
Hyundai Creta | 10,85,000 |
Hyundai Venue | 9,50,000 |
Hyundai i20 | 9,00,000 |
Kia Sonet | 10,00,000 |
Kia Seltos | 8,00,000 |
Swift Dezire | 7,95,000 |
表: Cars
ALTER TABLE RENAME Column 语句
RENAME 关键字用于更改现有表的列或字段的名称。
ALTER TABLE RENAME Column 语法
ALTER TABLE table_name RENAME COLUMN old_name to new_name;
ALTER TABLE RENAME Column 示例
在这里,我们采用了以下两个不同的 SQL 示例,它们将帮助您如何使用 ALTER TABLE 语句更改现有表的列名:
示例:我们以一个名为Cars 的表为例:
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表: Cars
- 假设您要更改上述 Cars 表的Car_Color列的名称。为此,您必须在 SQL 中键入以下查询:
ALTER TABLE Cars RENAME COLUMN Car_Color to Colors;
此语句将更改 Cars 表的一列的名称。要查看更改,您必须键入以下查询:
SELECT * FROM Cars;
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |