我正在將我的日誌導出到SQL。問題在於如果日誌API的長度超過800個字符,並且使用該消息的其餘部分創建新條目,則日誌API將修剪消息列。我使用logparser將這些數據直接導出到SQL中。因此,對於剩下的討論,讓我們假設我必須在SQL中解決這個問題。合併SQL中連續行中特定列的值
這就是SQL表看起來像
ID Timestamp EventID Message
1 2014-04-23 abcd "Some message"
如果消息字符數超過800,我們將有一個新的行與開始與信息表「...」的原始行將以「...」結尾,以表示將來還會有更多。
例如
ID Timestamp EventID Message
1 2014-04-23 abcd "Some message..."
2 2014-04-23 abcd "...More message..."
3 2014-04-23 abcd "...Even More message"
注意,屬於一個整體是連續的消息的ID的。沒有其他保證。時間戳保證是相同的分裂但不是截然不同的意思,表中可能有其他條目具有相同的時間戳。 eventID
也一樣。
問題
鑑於在表中該數據,我想創建其中縫線像這些信息彙集成一個單一的統一的信息的圖。所以用戶永遠不必知道在幕後發生的裁剪。
結果應該是這樣的
ID Timestamp EventID Message
1 2014-04-23 abcd "Some message More message even more message"
如果郵件合法地包含字符串'...'會怎麼樣? – bd33
如果我們有一條以「...」結尾的消息,那麼日誌API會放置一個附加的「...」。這同樣會去SQL。這隻有當信息超過800個字符時,字符798,799和800恰好是''。 – Sushant
看起來您正在尋找TSQL字符串聚合。看看這是否有幫助:http://codecorner.galanter.net/2009/06/25/t-sql-string-aggregate-in-sql-server/ –