简体   繁体   English

将 Varchar 转换为十进制

[英]convert Varchar to decimal

Can I convert varchar as decimal?我可以将 varchar 转换为十进制吗? I already tried this, but I receive the following error:我已经尝试过这个,但我收到以下错误:

"Function argument value, type, or count is invalid" “函数参数值、类型或计数无效”

The column adjust2,tax,sss_ee,sss_er,phic are the columns I'm trying to convert to decimal type.adjust2,tax,sss_ee,sss_er,phic是我试图转换为十进制类型的列。

Dim strQuery As String = "SELECT DATER, CODE, ID, REG_HRS, R_OT, RD_OT, RD_8, HOL_OT," &
         " HOL_OT8, ND, ABS_TAR, ADJUST1, GROSS_PAY, CAST(ADJUST2 AS DECIMAL(10,2)), CAST(TAX AS DECIMAL(10,2))," &
         " CAST(SSS_EE AS DECIMAL(10,2)), CAST(SSS_ER AS DECIMAL(10,2)), CAST(PHIC AS DECIMAL(10,2)), NET_PAY, REG_PAY FROM [" & dbfFileName & "]"

I believe this is data issue, you have existing data that cannot be cast to decimal.我相信这是数据问题,您现有的数据无法转换为十进制。

use TRY_PARSE instead.请改用TRY_PARSE

, COALESCE(TRY_PARSE(ADJUST2 AS DECIMAL(10,2)), 0.00)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM