SQLServerで1つのクエリにより複数行をinsertする
1つのクエリで、複数行をinsertする
SQLServer2008以降では、INSERT文で追加行をカンマでつなげることで実現できる。
なお、一度に追加できる最大行数は、1000行となる。
| 1 2 3 4 5 | INSERT  INTO test_table(col1, col2)  VALUES   (value1, value2)   , (value1, value2) | 
ちなみに、SQLServer2005以前では複数行のINSERTは動作しないので、以下のような方法をとることになる。
| 1 2 3 4 5 6 7 8 9 10 11 12 13 | INSERT  INTO dbo.MyTable(C1, C2)  SELECT   Value1   , Value2  UNION ALL  SELECT   Value1   , Value2  UNION ALL  SELECT   Value1   , Value2 | 
