SQL表单提示"从数据类型varchar转换为int时出错"
SQL表单提示"从数据类型varchar转换为int时出错"varsql="selecta.youxq"+"fromspkca(nolock)"+"wherea.youx...
SQL表单提示"从数据类型varchar转换为int时出错"
var sql = " select a.youxq "
+ " from spkc a (nolock) "
+ " where a.youxq between 0 and 24 "
已知spkc表中的youxq字段为varchar(10)型,且表中此字段的值有带小数的,如"1.5"
试过将a.youxq改为cast(a.youxq as int)或convert(int,convert(numeric(18,9),a.youxq)),均提示同类错误,求语句如何改。 展开
var sql = " select a.youxq "
+ " from spkc a (nolock) "
+ " where a.youxq between 0 and 24 "
已知spkc表中的youxq字段为varchar(10)型,且表中此字段的值有带小数的,如"1.5"
试过将a.youxq改为cast(a.youxq as int)或convert(int,convert(numeric(18,9),a.youxq)),均提示同类错误,求语句如何改。 展开
4个回答
展开全部
字段的值有带小数,肯定不能as int ,改成cast(a.youxq as float)就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var sql = " select a.youxq "
+ " from spkc a (nolock) "
+ " where cast(a.youxq as float) * 100 between 0 and 240 "
追问
试过了,提示"从数据类型varchar转换为float时出错"
追答
那你的列数据还是有非数字字符类型数据存在,你好好看看
你不可能 cast ‘aaa’ 为数字的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
between 0.0 and 24.0看看
追问
试过了,提示"错误原因:Data truncation"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询