[英]Insert a new row for every change in value in a column
我有一個sql表,其中對於某列(例如Column C)中的值的每個更改,我想在其下插入新行以創建新事務。 我不確定如何找到該值更改並插入新行。 我一直通過導入到表中的csv文件中的VB代碼執行此操作,但是無法用SQL編寫它。
Sub InsertRows()
Dim r As Long, mcol As String, i As Long
' find last used cell in Column A
r = Cells(Rows.Count, "A").End(xlUp).Row
' get value of last used cell in column A
mcol = Cells(r, 1).Value
' insert rows by looping from bottom
For i = r To 2 Step -1
If Cells(i, 1).Value <> mcol Then
mcol = Cells(i, 1).Value
Rows(i + 1).Insert
End If
Next i
End Sub
這是示例數據
ID JOB FNAME LNAME ADDRESS1 ADDRESS2 DATE Concatenated
1234 A John Smith 4378 Anna St Seattle-WA-98040 12/24/2013 1234-A-41632
1234 A John Doe 3564 Lucie Ave Mercer Island-WA-98040 12/24/2013 1234-A-41632
1235 A Alex Smith 4554 Devon Ave Chicago-IL-60563 12/24/2013 1235-A-41632
1235 A Eli Manning 5555 Stranz Lane Dallas-TX-75213 12/24/2013 1235-A-41632
1233 B John Smith 4378 Anna St Seattle-WA-98040 12/24/2013 1233-B-41632
1233 C John Doe 3564 Lucie Ave Mercer Island-WA-98040 12/24/2013 1233-C-41632
1236 D Alex Smith 4554 Devon Ave Chicago-IL-60563 12/24/2013 1236-D-41632
1236 E Eli Manning 5555 Stranz Lane Dallas-TX-75213 12/24/2013 1236-E-41632
以下是所需的輸出
ID JOB FNAME LNAME ADDRESS1 ADDRESS2 DATE Concatenated
1234 A John Smith 4378 Anna St Seattle-WA-98040 12/24/2013 1234-A-41632
1234 A John Doe 3564 Lucie Ave Mercer Island-WA-98040 12/24/2013 1234-A-41632
1235 A Alex Smith 4554 Devon Ave Chicago-IL-60563 12/24/2013 1235-A-41632
1235 A Eli Manning 5555 Stranz Lane Dallas-TX-75213 12/24/2013 1235-A-41632
1233 B John Smith 4378 Anna St Seattle-WA-98040 12/24/2013 1233-B-41632
1237 C John Doe 3564 Lucie Ave Mercer Island-WA-98040 12/24/2013 1237-C-41632
1236 D Alex Smith 4554 Devon Ave Chicago-IL-60563 12/24/2013 1236-D-41632
1236 E Eli Manning 5555 Stranz Lane Dallas-TX-75213 12/24/2013 1236-E-41632
我嘗試在其中找到更改並在每次更改后插入一行的“已連接”列。 任何幫助,將不勝感激。
您確實想編寫一個從數據源運行到數據庫或時間取決於數據庫的存儲過程。
這是代碼
開始;
ALTER TABLE Test_table添加列b1(10,2);
更新test_table SET romney_pct = CAST(romney AS DECIMAL(10,2))/ CAST(uspres_total AS DECIMAL(10,2);
承諾;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.