查询语句:
select city as 'city', case substring_index(lie8*100,'.',1)
when cast(substring_index(lie8*100,'.',1) as UNSIGNED INTEGER) >= 10 then 1
when cast(substring_index(lie8*100,'.',1) as UNSIGNED INTEGER)< 10
and cast(substring_index(lie8*100,'.',1) as UNSIGNED INTEGER) > 8 then 2
else 3
END as 'qujian'
from jh_securities;
作者: 末猪 时间: 2012-12-26 14:46
先谢谢各位了。 作者: 末猪 时间: 2012-12-27 11:19
尼玛的,case后面跟个列名居然不报错,SQL Server里面就报错。加上列名后就统计结果就不对了。我那个插。
正确的SQL是:
select
city,
case
when lie8 >= 0.1 then 1
when lie8 < 0.1 and lie8 >= 0.08 then 2
else 3
end
from
jh_securities;
看来case when用的不到家, 作者: 末猪 时间: 2012-12-29 09:35
谢谢 case filed when 这样用判断数字会出错。字符还没试,试了再回帖。作者: 末猪 时间: 2013-1-5 16:10