sql中对某字段截取前4位后计数
a,b,c,d4个字段,d字段为6位数字,要求截取前4位后统计d字段相同的值各有多少,谢谢。不好意思,刚才说错了,d字段虽然全是数字,但类型为varchar,例如0010...
a,b,c,d 4个字段,d字段为6位数字,要求截取前4位后统计d字段相同的值各有多少,谢谢。
不好意思,刚才说错了,d字段虽然全是数字,但类型为varchar,例如001001,这样还能用d/100吗? 展开
不好意思,刚才说错了,d字段虽然全是数字,但类型为varchar,例如001001,这样还能用d/100吗? 展开
2014-04-20
展开全部
select
d / 100 as 截取前4位后,
count(*) as 各有多少
from
表
group by
d / 100
如果结果中 d / 100 返回了小数, 例如 1234.56
那么你需要使用一个函数来做 取整的 处理
如果你数据库是 Oracle 或者 DB2, 那么
用 TRUNC ( d / 100 ) 替换掉 d / 100
如果你数据库是 SQL Server
用 ROUND( d / 100 , 0, 1 ) 替换掉 d / 100
d / 100 as 截取前4位后,
count(*) as 各有多少
from
表
group by
d / 100
如果结果中 d / 100 返回了小数, 例如 1234.56
那么你需要使用一个函数来做 取整的 处理
如果你数据库是 Oracle 或者 DB2, 那么
用 TRUNC ( d / 100 ) 替换掉 d / 100
如果你数据库是 SQL Server
用 ROUND( d / 100 , 0, 1 ) 替换掉 d / 100
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询