2012-10-31 92 views
-2

我正在尋找關於將用戶定義的函數轉換爲數字的varchar的提示。訣竅是我在將字符串的常見文本表示轉換爲數字之後。此外,如果它不能被解析爲數字,我希望它返回NULL而不是拋出錯誤並停止查詢。SQL Server鍵值對將varchar轉換爲數字無例外

實例:

  • VARCHAR '10%」應該解析爲數字0.1(否刪除%符號和除以100)
  • VARCHAR '$ 1,00.1234' 應該解析爲數字100.1234(除去$符號和,)
  • VARCHAR '$ 1K' 應該解析爲數字1000(K將由千)相乘
  • VARCHAR '$ 1M' 應該解析爲數字1000000(米將由1百萬)
  • 乘以varchar'$ 1B'應該是par Se作爲數字十億(B將由10億相乘)
  • VARCHAR「100」應該解析爲數字1000(LTRIM & RTRIM)
  • VARCHAR「隨機文本」應該解析爲數字NULL(空不會引發的錯誤)

回答

2

我建議你使用CLR函數來解析這種複雜性。然後修復數據

除了非數字值之外,您還有貨幣,百分比,混合十進制/分隔符格式的組合。