首页 > 资讯列表 > 编程/数据库 >> 数据库操作教程

SELECT...INTO的具体用法

数据库操作教程 2023-05-12 12:11:37 转载来源: 网络整理/侵权必删

英文:SELECT... Specific usage of INTO

目录一、SELECT…INTO介绍二、SELECT INTO FROM语句三、select into from与insert into select区别:源自MySQL 5.7 官方手册 手册地址一、SELECT…INTO介绍SELECT…INTO用来将查询结果存储在变量或者写入文件中。SELECT

源自MySQL 5.7 官方手册 手册地址

一、SELECT…INTO介绍

SELECT…INTO用来将查询结果存储在变量或者写入文件中。

SELECT......[INTO OUTFILE 'file_name'        [CHARACTER SET charset_name]        export_options      | INTO DUMPFILE 'file_name'      | INTO var_name [, var_name]]

通常有以下三种用法

  • SELECT…INTO var_list,将查询结果存储在变量中;
  • SELECT…INTO OUTFILE 将查询结果写入一个文件,还可以指定列和行终止符以生成特定的输出格式。
  • SELECT…INTO DUMPFILE 将单行数据写入文件,没有任何格式。

在SELECT的语法展示中,INTO子句在整个语句的尾部。但是让INTO子句紧跟select_expr列表后。
一个INTO子句不应该在内嵌的SELECT中使用,因为这样一个SELECT必须将它的查询结果返回给外部上下文。

二、SELECT INTO FROM语句

SQL SELECT INTO 语句可用于创建表的备份复件。

语法:

您可以把所有的列插入新表:

SELECT *INTO new_table_name [IN externaldatabase] FROM old_tablename

或者只把希望的列插入新表:

SELECT column_name(s)INTO new_table_name [IN externaldatabase] FROM old_tablename

SQL SELECT INTO 实例 - 制作备份复件

下面的例子会制作 “Persons” 表的备份复件:

SELECT *INTO Persons_backupFROM Persons

IN 子句可用于向另一个数据库中拷贝表:

SELECT *INTO Persons IN 'Backup.mdb'FROM Persons

如果我们希望拷贝某些域,可以在 SELECT 语句后列出这些域:

SELECT LastName,FirstNameINTO Persons_backupFROM Persons

SQL SELECT INTO 实例 - 带有 WHERE 子句

我们也可以添加 WHERE 子句。

下面的例子通过从 “Persons” 表中提取居住在 “Beijing” 的人的信息,创建了一个带有两个列的名为 “Persons_backup” 的表:

SELECT LastName,FirstnameINTO Persons_backupFROM PersonsWHERE City='Beijing'

SQL SELECT INTO 实例 - 被连接的表

从一个以上的表中选取数据也是可以做到的。

下面的例子会创建一个名为 “Persons_Order_Backup” 的新表,其中包含了从 Persons 和 Orders 两个表中取得的信息:

SELECT Persons.LastName,Orders.OrderNoINTO Persons_Order_BackupFROM PersonsINNER JOIN OrdersON Persons.Id_P=Orders.Id_

三、select into from与insert into select区别:

1.INSERT INTO SELECT语句
语句形式为:Insert into Table2(field1,field2,…) select value1,value2,… from Table1
要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量

2.SELECT INTO FROM语句
语句形式为:SELECT vale1, value2 into Table2 from Table1
要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中。

比较两种语句的差别,选择适合自己情况的语句。
此外,ispass是个经过处理的字段,其值类型可能无法自动创建,所以,建议使用第一种形式的语句,建立一个表,然后再插入查询。

到此这篇关于SELECT...INTO具体用法的文章就介绍到这了,更多相关SELECT INTO内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

英文:SELECT... Specific usage of INTO

标签: SELECT...INTO 具体 用法


声明:本文内容来源自网络,文字、图片等素材版权属于原作者,平台转载素材出于传递更多信息,文章内容仅供参考与学习,切勿作为商业目的使用。如果侵害了您的合法权益,请您及时与我们联系,我们会在第一时间进行处理!我们尊重版权,也致力于保护版权,站搜网感谢您的分享!

站长搜索

http://www.adminso.com

Copyright @ 2007~2024 All Rights Reserved.

Powered By 站长搜索

打开手机扫描上面的二维码打开手机版


使用手机软件扫描微信二维码

关注我们可获取更多热点资讯

站长搜索目录系统技术支持