【问题标题】:Insert Values Into SQL from a List OR Array Values将值从列表或数组值插入 SQL
【发布时间】:2021-01-06 03:19:20
【问题描述】:

我需要使用另一个具有多个结果的 select 语句将值插入到表中。不过,也不是我可以一件一件的去做。有什么方法可以更有效地将值插入到表中?

从 K_Table 中选择不同的孩子

KID
1
2
5
7
15
...

从第一个 DISTINCT SELECT 语句中,它将选择多个 KID 结果,结果可能多达 100 行。

INSERT INTO K_Table VALUES(Listof(KID)[0],'Default','ABC',GETDATE()),  
                            (Listof(KID)[1],'Default','ABC',GETDATE()),
                            (...)

是否能够从 SELECT 语句中获取结果并将其作为数组或列表用于插入值?

【问题讨论】:

  • 您使用的是什么版本的 SQL(例如 MySQL、SQL Server、Oracle、Postgres)?
  • 很抱歉缺少 SQL 类型的标记,它将是 SQL Server。谢谢。

标签: sql sql-server sql-insert


【解决方案1】:

你可以直接使用insert into .. select..,如下:

INSERT INTO K_Table 
Select distinct KID,'Default','ABC',GETDATE()
  From k_table; 

但是,我不知道你为什么要将数据添加到同一个表中。

【讨论】:

    【解决方案2】:

    您可以在一个语句中使用 INSERT 和 SELECT

    INSERT INTO K_Table(Kid, Col1, Col2, Col3) SELECT DISTINCT Kid, 'Default', 'ABC', Getdate() FROM K_Table

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-09-15
      • 1970-01-01
      • 1970-01-01
      • 2021-11-24
      • 2017-05-03
      • 2011-07-25
      • 1970-01-01
      相关资源
      最近更新 更多