[英]SQL replace/ remove multiple date and time stamp from any part of a string
[英]sql remove date and time stamp from string
你們中任何一位出色的DBA專家都知道如何從SQL字符串中刪除“日期”和“時間戳”嗎?
例如,我有一個包含以下內容的字符串:
“ 2014-04-17 15:38:53.2389意外失敗System.ServiceModel.FaultException:意外失敗”
我想刪除“ 2014-04-17 15:38:53.2389”,只剩下這個:
“意外失敗System.ServiceModel.FaultException:意外失敗”
我可以使用SUBSTRING使其正常工作
SUBSTRING(CAST([stacktrace] AS NVARCHAR(500)),25 ,LEN(CAST([stacktrace] AS NVARCHAR(500)))) as stackTrace
但這不是很優雅,可能會導致字符串開頭沒有日期的問題。
我可以找到刪除時間戳或日期的方法,但是找不到同時刪除兩者的方法。
任何幫助將非常感激。
謝謝
我不知道確切的代碼,但是:應該可以根據字符串中的第一個字母來過濾字符串。
至少提供錯誤的通用格式,例如您將要獲取日期和時間戳,或者只是時間戳或某些文本,因此錯誤始終以
您可以使用以下方法:
檢查開始日期是否為日期,並在if-else下相應地設計子字符串
select isdate(convert(varchar(10),'2014-04-17 15:38:53.100',111))
可能你可以用
if (select isdate(convert(varchar(10),<use substring to get first 25 values>,111)))=1
then <design substring to remove and use data>
else
<use as-is>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.