![](/img/trans.png)
[英]Conversion failed when converting the varchar value '%' to data type int SQL
[英]SQL - Conversion failed when converting the varchar value to Int
我正在將varchar
值傳遞給SQL函數。
但是我得到這個錯誤:
消息245,第16級,狀態1,第2行
將varchar值'201,505,59,43,2202'轉換為數據類型int時,轉換失敗。
樣例代碼:
Declare @Fault Varchar(Max) = '201,505,59,43,2202'
Select *
From EventMsg
Where Event IN (Convert(Int, @Fault))
我同時嘗試了CAST
和CONVERT
函數...但是相同的錯誤。
如果將逗號分隔的整數值列表作為字符串傳遞,並希望使用每個值,則需要編寫類似於.NET世界中String.Split的函數。
關於堆棧溢出有很多答案,這是一些
另一種方法是聲明表變量:
DECLARE @errorCodes AS TABLE (
err INT
)
INSERT INTO @errorCodes (err) VALUES (1), (2), (3)
Select * From EventMsg Where Event IN (SELECT err FROM @errorCodes)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.