如何解决将数据类型 varchar 转换为数字的错误

新手上路,请多包涵
SELECT
    A.SETMOD, B.DESCRP
FROM
    PMS.PSBSTTBL A
JOIN
    PMS.PR029TBL B ON A.SETMOD = B.PAYMOD

Paymod 数据类型为 VARCHAR , SETMOD 类型为 decimal

原文由 Thiru 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 651
2 个回答

最好的办法是将小数转换为字符串并将其与字符串值进行比较.. 对小数部分进行必要的调整.. :)

 SELECT
    A.SETMOD, B.DESCRP
FROM
    PMS.PSBSTTBL A
JOIN
    PMS.PR029TBL B ON CONVERT(VARCHAR(50),A.SETMOD) = B.PAYMOD

原文由 Unnikrishnan R 发布,翻译遵循 CC BY-SA 3.0 许可协议

SELECT
A.SETMOD, B.DESCRP
FROM
PMS.PSBSTTBL A
JOIN
PMS.PR029TBL B ON A.SETMOD =convert(decimal, B.PAYMOD)

原文由 Hitesh Thakor 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进