首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >INSERT select和insert into select的区别?

INSERT select和insert into select的区别?
EN

Stack Overflow用户
提问于 2009-08-27 13:28:15
回答 4查看 9.6K关注 0票数 19

我经常看到两种风格,INSERT select和insert into select,有什么不同?它们是一样的吗?

我使用的是SQL Server 2008 Enterprise。

这里有两个示例。

INSERT california_authors (au_id, au_lname, au_fname)
SELECT au_id, au_lname, au_fname
FROM authors
WHERE State = 'CA'

http://www.sqlteam.com/article/using-select-to-insert-records

INSERT INTO Store_Information (store_name, Sales, Date)
SELECT store_name, Sales, Date
FROM Sales_Information

http://www.1keydata.com/sql/sqlinsert.html

先谢谢你,乔治

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-08-27 13:30:03

SQL ServerMySQL中,INTO是纯粹的语法糖。

没什么区别。

OraclePostgreSQL要求此关键字存在,AFAIRANSI SQL标准也是如此。

票数 25
EN

Stack Overflow用户

发布于 2009-08-27 13:30:02

它们是一样的;INTO只是可选的。

票数 6
EN

Stack Overflow用户

发布于 2009-08-27 13:33:46

我相信你列出的两个说法实际上是相同的。第一个批处理中缺少"INTO“语句,但它被隐含为INSERT语句的一部分。

为了便于说明,以下是使用INSERT语句的一些不同形式。

SELECT 
    1 AS ID ,
    'SomeText' AS SomeText
INTO #tmpTableName

INSERT INTO #tmpTableName (ID,SomeText) 
SELECT 2, 'Text' 

INSERT INTO #tmpTableName (ID,SomeText) 
VALUES(3, 'MoreText')

SELECT * FROM #tmpTableName

DROP TABLE #tmpTableName
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1341096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档