首页 > 数据库 >SQL 复制表与SQL 临时表与SQL 修改表结构

SQL 复制表与SQL 临时表与SQL 修改表结构

时间:2023-09-19 15:59:27浏览次数:31  
标签:00 Car Hyundai 000 复制 表与 SQL TABLE

如果要将一个 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 NameCar ColorCar 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 NameCar ColorCar 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 NameCar ColorCar 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 NameCar ColorCar 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 数据库中创建的。

根据行为和范围,有两种类型的临时表。

  1. 本地临时表
  2. 全局临时表

本地临时表

本地临时表仅在当前连接时间可用。当用户与实例断开连接时,它会自动删除。它以井号 (#) 符号开头。

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 NameCar ColorCar 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 NameCar ColorCar 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 NameCar ColorCar 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 NameCar 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 NameCar ColorCar 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 NameCar ColorCar 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

标签:00,Car,Hyundai,000,复制,表与,SQL,TABLE
From: https://www.cnblogs.com/maaa/p/17714848.html

相关文章

  • 记一个mysql死锁问题,在并发情况下导致的数据库更新超时
    1、问题:在执行mysql数据库更新操作,根据条件更新其中一列的值,具体的更新语句类似如下:updatepeoplesetname='zhangsan'whereid=1a andage=24;但是在Java中使用parallelStream().foreach(a->{//sql更新操作})并发流就会出现问题,导致有的更新会失败,报如下错误:M......
  • 【转】MySQL安装失败原因及解决方案
     MySQL安装,初始化数据的时候失败。。。。。报错bin.index一堆的乱码找了好长时间的原因了。。。。。。。大概率原因是:计算机名称是中文。 转自:MySQL安装失败原因及解决方案(ngui.cc)......
  • SQL 是什么
    一、什么是SQL?SQL是结构化查询语言的缩写形式,读作SQL,有时读作See-Quell。这种数据库语言主要是为维护关系数据库管理系统中的数据而设计的。它是数据专业人员用于处理结构化数据(以表格形式存储的数据)的特殊工具。它还设计用于RDSMS中的流处理。您可以轻松地创建和操作数......
  • mysql TRUNCATE DELETE DROP
    https://www.cnblogs.com/cy0628/p/15019630.html     truncate与drop,delete的对比(重要)12345678上面说过truncate与delete,drop很相似,其实这三者还是与很大的不同的,下面简单对比下三者的异同。 truncate与drop是DDL语句,执行后无法回滚;delete是DML......
  • 导出复制行备份
    XSSFRowrow15=sheetAt.getRow(15);sheetAt.shiftRows(15,sheetAt.getLastRowNum(),map2.size()-1,true,false);for(inta=0;a<(map2.size()-1);a++){XSSFRowtargetrow=sheetAt.createRow......
  • SQL 数据类型
    数据类型用于表示可以存储在数据库表中的数据的性质。例如,在表的特定列中,如果我们要存储字符串类型的数据,那么我们必须声明该列的字符串数据类型。每个数据库的数据类型主要分为三类。字符串数据类型数值数据类型日期和时间数据类型一、MySQL数据类型 MySQL字符串类型......
  • SQL 创建数据库
    在SQL中,“CreateDatabse”语句是将结构化数据存储在数据库中的第一步。数据库开发人员和用户使用SQL中的此语句在数据库系统中创建新数据库。它使用在CreateDatabase语句中指定的名称创建数据库。一、SQL创建数据库语法CREATEDATABASEDatabase_Name;在此语法中,D......
  • SQL 运算符
    每个数据库管理员和用户都使用SQL查询来操作和访问数据库表和视图的数据。数据的操作和检索是在保留字和字符的帮助下进行的,用于执行算术运算、逻辑运算、比较运算、复合运算等。什么是SQL运算符?SQL保留字和字符称为运算符,它们与SQL查询中的WHERE子句一起使用。在SQL......
  • SQL 选择数据库
    假设数据库用户和管理员想要在SQL中对特定现有数据库上的表、视图和索引执行一些操作。首先,他们必须选择要在其上运行数据库查询的数据库。任何数据库用户和管理员都可以使用SQL中的USE语句轻松地从当前数据库服务器中选择特定数据库。一、SQL选择数据库语法USEdatabase......
  • SQL 重命名数据库
    在某些情况下,数据库用户和管理员出于某些技术原因想要更改数据库的名称。因此,SQL中的RenameDatabase语句用于更改现有数据库的名称。有时,使用RenameDatabase语句是因为开发人员认为原始名称与数据库的数据没有更多相关性,或者他们想给该数据库一个临时名称。一、SQL重命名......