加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – INSERT INTO SELECT vs VALUES

发布时间:2020-12-12 07:50:07 所属栏目:MsSql教程 来源:网络整理
导读:尽管在表中插入一行时,没有任何理由(除了可能来自美学)使用INSERT INTO SELECT,使用这个和INSERT INTO VALUES有什么不同吗? 解决方法 使用INSERT INTO … SELECT方法可以根据一些标准从另一个表中选择您的值. INSERT INTO dbo.TargetTable(Col1,Col2,....,Co
尽管在表中插入一行时,没有任何理由(除了可能来自美学)使用INSERT INTO SELECT,使用这个和INSERT INTO VALUES有什么不同吗?

解决方法

使用INSERT INTO … SELECT方法可以根据一些标准从另一个表中选择您的值.
INSERT INTO dbo.TargetTable(Col1,Col2,....,ColN)
   SELECT Col1,...,ColN
   FROM dbo.SourceTable
   WHERE (some condition)

这可能会更容易一些,更可读写,而不是从源表中检索20个值,将其隐藏到临时变量中,以便您可以调用INSERT INTO dbo.Destination(….)VALUES( ……)声明…

DECLARE @Value1 INT
DECLARE @Value2 DATETIME
....
DECLARE @ValueN INT

SELECT 
      @Value1 = Col1,@Value2 = Col2,....
      @ValueN = ColN
FROM 
    dbo.SourceTable
WHERE
     (some condition) 

INSERT INTO dbo.TargetTable(Col1,ColN)
VALUES(@Value1,@Value2,.....,@ValueN)

但是最后 – 这只是插入数据的INSERT语句 – 它只是一个个人偏好的问题,哪种方法更容易/更方便使用….

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读