在SQL Server中插入关键字的公式

时间:2011-08-25 10:07:04

标签: sql sql-server

我想在表格中插入一些值,有一个顺序,例如1,2,3 .... n

Insert Into table_name VALUES ( '1', 'A' )
Insert Into table_name VALUES ( '2', 'AA' )
Insert Into table_name VALUES ( '3', 'AAC' )
Insert Into table_name VALUES ( '.', '....' )
Insert Into table_name VALUES ( '.', '....' )
Insert Into table_name VALUES ( 'n', '....' )

如何制定此INSERT声明?

2 个答案:

答案 0 :(得分:3)

如果你想插入一系列行 - 当然,你可以使用循环 - 但你怎么知道要获得的其他值(索引除外)?

DECLARE @index INT
SET @index = 0

WHILE @index < 10
BEGIN
    INSERT INTO dbo.table_name(Index)
    VALUES( CAST(@index AS VARCHAR(50)) )  -- or whatever type you need....

    SET @index = @index + 1
END

答案 1 :(得分:1)

通常的做法是选择要从其他地方插入的值:

INSERT INTO company1.new_customers (id, name, address) 
SELECT 
  NULL   -- this will trigger the DB to auto-generate the new id's
  ,name
  ,address
FROM company2.old_customers

如果你必须在SQL中使用loop,那你做错了。
SQL适用于集合。