2017-09-05 34 views
0

是否有SQL的方式來複制每一行和每一結果之前輸入一個恆定值,如下所示:如何複製行併爲每個行使用SQL進行多個插入特定列?

This is what I have: 

    Name  Height    
1 John  6.5   
2 Ben   7.0   
3 Mike  6.6 
4 Adam  7.1 

我要添加新行盈在數據中的每一行,並指定值(前。 1,5,5,5 ......),如下圖所示:

Name  Height    
1 JohnStart 1 
2 John  6.5 
3 BenStart 5      
4 Ben   7.0 
5 MikeStart 5      
6 Mike  6.6 
7 AdamStart 5 
8 Adam  7.1 

我試圖插入功能,但它不工作

INSERT INTO mydata (Name, Height) 
VALUES ('AdamStart', '5') 
+2

沒有「每行前面」這樣的事情。第一列是什麼? –

+0

第一列是名稱 – luanstat

+0

新值的標準是什麼? – Amit

回答

2

您可以使用SQL UNION運算符來照着做。 (Abs(Checksum(NewId()))%10)在內部生成一個GUI,計算其校驗和的絕對值。它將始終生成一個介於0和10之間的值。添加1以處理零值情況。

SELECT Name, Height FROM tbl 
UNION 
SELECT Name + 'Start', (Abs(Checksum(NewId())) % 10) + 1 FROM tbl 
+0

並非所有的人都有5 – LONG

+0

你有另一個表或表變量來存儲該詳細信息 – Amit

+0

謝謝,這是越來越的地方,但不幸的是@LONG提到並不是所有的都與5後。我想進入4或5行後1再次。 – luanstat

相關問題