我試圖導入到表後,解析在T-SQL一個BAIv2銀行文件。該文件由行組成,每行有兩個前導數字。如果行的前導數字碰巧是「88」,那麼它是一個「連續行」,並且意味着是前一行的擴展(以防止行在文件中變得太寬)。實施例下面的文件:SQL服務器串連某些Subsquent行到父行使用基於集合的解決方案
01,123456,123456,123456,1419,1,80,2/
02,123456,123456,1,123456,美元,2/
03,123456,美元,010,0 ,,, 015,0 ,,, 020,0 ,,, 025,0 ,,, 030,0 ,,, 040,0 ,,, 045,0 ,,/
88,050,0, ,, 055,0 ,,, 057,0 ,,, 060,0 ,,, 072,0 ,,, 074,0 ,,, 100,123456,1,270,123456,1,/
88400, 123456,35,470,123456,35,/
16,275,123456,S,123456,0,0 ,,/
88,ZBA XFER來自銀行賬戶123456
16,475,123456,Z,123456,123456/
88,CHECK-IRD
16,475,123456,Z,123456,123456/
88,登記IRD
如何使用基於集合的SQL查詢的行與一家領先追加「 88「到前一行?它看起來像一個基於XML的查詢可能工作。我能夠用複雜的循環和變量完成這個任務,但效率非常低,所以我想要一個基於集合的解決方案。任何幫助,將不勝感激。
我需要它看起來像這樣具有附加到以前行 「88」 記載:
01,123456,123456,123456,1419,1,80,2/
02,123456 ,123456,1,123456,美元,2/
03,123456,美元,010,0 ,,, 015,0 ,,, 020,0 ,,, 025,0 ,,, 030,0 ,,, 040,0 ,,, 045,0 ,,, 050,0 ,,, 055,0 ,,, 057,0 ,,, ...
16,275,123456,S,123456,0,0 ,,, ZBA XFER來自銀行帳戶123456
16,475,123456,Z,123456,123456,CHECK-IRD
16,475,123456,Z,123456,123456,CHECK-IRD
如何表此刻設置? –
它只有一個id列和一個名爲text_record的列來保存文件中的行。 –