2013-10-14 17 views
0

使用下面的代碼來生成表有一列如下:如何把連續的數字爲表SQL就不一一

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。

+1

爲什麼你要在字符串列中存儲一個整數? – Kermit

+0

也許你可以更清楚地解釋你的問題。即a)您正在使用(1),(2)等,以及b)您是什麼意思1:7? –

+0

爲什麼MySQL @Fresh?這是有效的SQL Server(例如)語法以及... – Ben

回答

0

如果我沒有錯,你正在尋找一種方法來在單個批次中插入一列INT值。例如「在列A中插入100個標識」。 沒有預定義的SQL SERVER函數。但是你可以解決使用任何系統表,你肯定會有足夠的數字行,你正在尋找。

SELECT rownum 
    FROM 
    (
     SELECT name,ROW_NUMBER() OVER (ORDER BY name) rownum 
     FROM sysobjects so 
    )q 
    WHERE rownum <= 7 
3

有沒有人說recursion

with rec as (
    select 1 i 
    union all 
    select i+1 from rec where i < 7 
) 
select * from rec 
相關問題