【求助】
sqlserver吧
全部回复
仅看楼主
level 1
VS假命题
楼主
请教下各位大神,我这两句查询语句只有price后面跟的数值不同,但是是9.00的时候就会报错,
price 的数据类型是CHAR(8) ,请教一下这是什么原因
2016年05月06日 15点05分
1
level 1
VS假命题
楼主
是不是要加单引号啊???还是char(8)虽然里面存的数值,但是不能直接用来比较??
2016年05月06日 15点05分
2
level 11
👻学霸霸
你拿字符型和浮点型比当时出错了,两个类型要一样
2016年05月07日 01点05分
3
VS假命题
那这里要怎么比较
2016年05月08日 02点05分
👻学霸霸
@VS假命题
楼下说的对的
2016年05月08日 06点05分
👻学霸霸
@👻学霸霸
price应该是金额吧。在建表前你就要想好它是什么类型。你建表用的是char也就是字符型。在sql中类型不一样是不能比较的。所以你需要把price的类型转换成浮点型
2016年05月08日 07点05分
👻学霸霸
@VS假命题
alter table [tbname] alter column price numeric(4,2)这条语句是将表中price类型由char转成numeric型。或者你可以直接用cast(price as numeric(4,2))代替条件中的price
2016年05月08日 07点05分
level 6
Daily_Dad
alter table [tbname] alter column price numeric,
然后就可以select了
2016年05月08日 05点05分
4
VS假命题
谢谢
2016年05月09日 06点05分
level 13
瑚一刀
应该是大于9.0的的price中包括了不能强转的的varchar数据。自己先处理数据吧
2016年07月08日 00点07分
9
level 2
天蓝色的海105
大于9.0的数据肯定有varchar或者其他类型的,查询大于9的时候加个top10排查下数据
2016年07月13日 14点07分
10
level 3
蹲坑朔
额
2016年07月13日 14点07分
11
level 3
蹲坑朔
求大神解答,select语句中大于号后面的数字要不要加引号
2016年07月13日 14点07分
12
瑚一刀
肯定不加了 加引号代表字符,字符怎么比较
2016年07月13日 16点07分
蹲坑朔
@瑚一刀
谢谢
2016年07月14日 09点07分
1