【问题标题】:Sql Server - Any special way to insert so that in one column the value was the same, while in the other varied?Sql Server - 任何特殊的插入方式,以便在一列中的值相同,而在另一列中不同?
【发布时间】:2011-12-02 07:52:34
【问题描述】:

我需要插入一个包含两列的简单表格。

第一列必须在每一行中包含相同的值,而第二列必须包含源表中的各种值。所以一切都应该是这样的:

问题是 - 在这种情况下有没有办法进行基于集合的插入?我现在这样做的方式是简单地遍历源表的行。或者也可以使用游标,只是我不确定哪个最好。

但这仍然是迭代。

有什么办法可以解决这个问题吗? 提前致谢!

【问题讨论】:

  • 给我们您的插入语句。顺便说一句,使用INSERT INTO <target> (Col1,Col2) SELECT 1,<colname> FROM <source>

标签: sql sql-server sql-server-2008 insert


【解决方案1】:

如果你提前知道你的静态值,你可以这样做:

INSERT INTO targetTable(Col1, Col2)
SELECT 1, yourColumn
FROM sourceTable
WHERE <condition>

这是假设1 是您的静态值。根据查询的具体情况,可以将其替换为实际值或变量。

【讨论】:

    【解决方案2】:
    insert into dest_tab(col1, col2)
    select 1, col2
    from src_table
    where ....
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-15
      • 1970-01-01
      • 1970-01-01
      • 2020-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-25
      相关资源
      最近更新 更多