0

以下のコードを使用すると、次のように 1 つの列を持つテーブルが作成されます。

1
2
3
4
5
6
7
CREATE TABLE abc (a VARCHAR(8));
INSERT INTO abc VALUES(1),(2),(3),(4),(5),(6),(7)

しかし、 (1),(2),(3),(4),(5),(6),(7) を使用してメソッドを使用するにはどうすればよいですか? 1:7 のみのようなものですか?

4

2 に答える 2

4

誰かが再帰と言いましたか??

with rec as (
    select 1 i
    union all
    select i+1 from rec where i < 7
)
select * from rec
于 2013-10-14T21:24:50.677 に答える
0

私が間違っていなければ、列に INT 値のセットを単一のバッチで挿入する方法を探しています。たとえば、「列 A に 100 個の ID を挿入する」などです。そのための定義済みの SQL SERVER 関数はありません。ただし、探している十分な数の行があることが確実なシステムテーブルを使用して回避できます。

    SELECT rownum
    FROM
    (
        SELECT name,ROW_NUMBER() OVER (ORDER BY name) rownum
        FROM sysobjects so
    )q
    WHERE rownum <= 7
于 2013-10-14T21:23:07.170 に答える