SQL区间查询的用户数
2015-10-20 10:56
253 查看
查找用户数(1)
SELECT SUM(CASE WHEN sm>=1 AND sm<=100 THEN 1 ELSE 0 END) AS sm_1_100, SUM(CASE WHEN sm>=101 AND sm<=200 THEN 1 ELSE 0 END) AS sm_101_200, SUM(CASE WHEN sm>=200 THEN 1 ELSE 0 END) AS sm_200_M FROM( SELECT userid,SUM(money)/100 as sm FROM order GROUP BY userid ) A;
查找用户数(2)
SELECT COUNT(DISTINCT CASE WHEN sm>=1 AND sm<=100 THEN userid ELSE null END) AS sm_1_100, COUNT(DISTINCT CASE WHEN sm>=101 AND sm<=200 THEN userid ELSE null END) AS sm_101_200, COUNT(DISTINCT CASE WHEN sm>=200 AND sm<=99 THEN userid ELSE null END) AS sm_200_M, FROM( SELECT userid,SUM(money)/100 as sm FROM order GROUP BY userid ) A;
相比较上面(1)速度要快很多
相关文章推荐
- [转]oracle性能调优之--Oracle 10g AWR 配置
- mysql分表的三种方法
- MYSQL数据库备份与恢复
- 源码编译安装 MySQL 5.5.x 实践
- oracle 11.2版本.sysman/log下emdb.nohup文件偏大,如何解决?
- Oracle 组件 系列 小结
- There is no statement named OproductKey.selectProductkey in this SqlMap
- PERFORMANCE_SCHEMA数据库
- xmemcached
- 关于PLSQL登陆报出Not logged on问题
- dedecms标签的sql语句
- windows 环境下 mysql,命令导入\导出表结构或数据
- oracle中的函数之单行函数
- mysql登录错误或者密码错误
- sql如果存在就修改不存在就新增
- MySQL for Mac 安装和基本操作
- 数据库操作类
- mysql日志介绍
- 数据库中的升序和降序
- mysql 通过使用联全索引优化Group by查询