与SQL Server批量插入,其中一列具有多个值,而其他所有列均具有预设值

塞达维德

我有一个表(Table1),其中有4列(ID1, ID2, Percent, Time, Expired)。我想在该表中插入一堆新行,该行ID1取自我拥有的另一个SQL查询,所有其他列均设置为某些指定值。

所以我有我的查询:

SELECT someID FROM other_tables WITH other_conditions

基本上我想做的是

FOR v in <above query>
     Insert New row into Table1 (v, some second id, some percent, some time, some expired value)

编辑我不反对不在循环中执行此操作,只是不知道插入数据的最佳方法是什么

希门

您可以使用游标并获取我认为要完成的任务。这是给您的贝壳...

带光标

DECLARE c CURSOR FOR
SELECT DISTINCT colName FROM Table1 JOIN Table2 ON <stuff> WHERE <other_stuff>

DECLARE @ID VARCHAR(4) --or what ever is needed

OPEN c
FETCH NEXT FROM c INTO @ID


WHILE @@FETCH_STATUS = 0
    BEGIN
        INSERT INTO Table1 (ID, ID2, Percent, Time, Expired)
        VALUES (@ID, some second id, some percent, some time, some expired value)
        WHERE ID = @ID

        FETCH NEXT FROM c INTO @ID
    END

CLOSE c
DEALLOCATE c

交叉应用(虚拟数据)

if object_id('tempdb..#ids') is not null drop table #ids
if object_id('tempdb..#idDetails') is not null drop table #idDetails

create table #ids (id int)
insert into #ids (id) values
(1),(2),(3)


select i.*, d.*
into #idDetails
from #ids i cross apply (select 2 as id2 ,2.0 as per,'1/1/2016' as dt,'x' as x) d

select * from #idDetails

交叉申请(以您的桌子为例)

select i.someID, d.*
into #idDetails
from other_tables i 
cross apply (select 'some second id' as id2 ,'some percent' as [Percent],'1/1/2016 14:55:22' as [SomeTime] as dt,'SomeExpiredVal' as [ExpiredVal]) d

select * from #idDetails

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL-如何插入具有同一列的多个值的记录?

来自分类Dev

sql中一列的所有值的总和

来自分类Dev

sql中一列的所有值的总和

来自分类Dev

如何获取在SQL Server的另一列上具有多个值的行?

来自分类Dev

查找其中一列属于同一值并且另一列满足SQL Server 2008中的条件的所有行

来自分类Dev

当其中一列为NULL /空白时,SQL Join具有两列

来自分类Dev

T-SQL选择重复的行,其中至少一列具有值

来自分类Dev

SQL选择一列中具有重复值的所有行

来自分类Dev

SQL:选择具有空值的其他列

来自分类Dev

sql加入具有不同值的同一列

来自分类Dev

SQL 来自具有内部联接的同一列的多个值

来自分类Dev

SQL选择具有与其他表中的列值匹配的列值的行

来自分类Dev

SQL选择具有与其他表中的列值匹配的列值的行

来自分类Dev

SQL / Postgres:查找具有相同值的元组(对于另一列中的给定值)

来自分类Dev

SQL SELECT:具有基于其他列的值的新列

来自分类Dev

SQL查询以选择记录在其中一列中值为= 0且在另一列中具有唯一ID的行

来自分类Dev

sql:使用单个查询在另一列中选择具有相同列值的行

来自分类Dev

如何根据另一列 SQL 中的值创建具有计数值的新列

来自分类Dev

如何在SQL Server的表的所有列中选择具有空值的行?

来自分类Dev

SQL Server选择所有列中具有1值的行

来自分类Dev

存储过程可检索SQL Server中具有值的所有外键列

来自分类Dev

具有多个事件的DateDiff同一列SQL Server

来自分类Dev

对SQL Server中一行中的所有列值求和

来自分类Dev

如何更新具有多个值的SQL列

来自分类Dev

SQL删除具有多个相同列的重复值

来自分类Dev

在SQL中查找具有多个列值的记录

来自分类Dev

如何更新具有多个值的SQL列

来自分类Dev

SQL数据建模,具有多个值的列

来自分类Dev

SQL-仅选择具有特定多个值的列

Related 相关文章

  1. 1

    SQL-如何插入具有同一列的多个值的记录?

  2. 2

    sql中一列的所有值的总和

  3. 3

    sql中一列的所有值的总和

  4. 4

    如何获取在SQL Server的另一列上具有多个值的行?

  5. 5

    查找其中一列属于同一值并且另一列满足SQL Server 2008中的条件的所有行

  6. 6

    当其中一列为NULL /空白时,SQL Join具有两列

  7. 7

    T-SQL选择重复的行,其中至少一列具有值

  8. 8

    SQL选择一列中具有重复值的所有行

  9. 9

    SQL:选择具有空值的其他列

  10. 10

    sql加入具有不同值的同一列

  11. 11

    SQL 来自具有内部联接的同一列的多个值

  12. 12

    SQL选择具有与其他表中的列值匹配的列值的行

  13. 13

    SQL选择具有与其他表中的列值匹配的列值的行

  14. 14

    SQL / Postgres:查找具有相同值的元组(对于另一列中的给定值)

  15. 15

    SQL SELECT:具有基于其他列的值的新列

  16. 16

    SQL查询以选择记录在其中一列中值为= 0且在另一列中具有唯一ID的行

  17. 17

    sql:使用单个查询在另一列中选择具有相同列值的行

  18. 18

    如何根据另一列 SQL 中的值创建具有计数值的新列

  19. 19

    如何在SQL Server的表的所有列中选择具有空值的行?

  20. 20

    SQL Server选择所有列中具有1值的行

  21. 21

    存储过程可检索SQL Server中具有值的所有外键列

  22. 22

    具有多个事件的DateDiff同一列SQL Server

  23. 23

    对SQL Server中一行中的所有列值求和

  24. 24

    如何更新具有多个值的SQL列

  25. 25

    SQL删除具有多个相同列的重复值

  26. 26

    在SQL中查找具有多个列值的记录

  27. 27

    如何更新具有多个值的SQL列

  28. 28

    SQL数据建模,具有多个值的列

  29. 29

    SQL-仅选择具有特定多个值的列

热门标签

归档