需要一些统计,在同一个表,但是条件不同如下:$count_vip = $_SGLOBAL['db']->query("SELECT id FROM oa_guest WHERE vip = 0 ");
$count = $_SGLOBAL['db']->num_rows($count_vip);这样统计了一下非VIP的数字
然后又需要统计某个时间段的"SELECT id FROM oa_guest WHERE time > 时间戳 and time < 时间戳"
然后又需要其他类型 "SELECT count(id) FROM oa_guest group by classid"
又来个
"SELECT id FROM oa_guest WHERE rank = 'A'";
"SELECT id FROM oa_guest WHERE rank = 'B'";
"SELECT id FROM oa_guest WHERE rank = 'C'";
"SELECT id FROM oa_guest WHERE rank = 'D'";等等,需要统计这个表的东西有数十个有没有什么方法,能用少量的语句来一下根据不同条件统计出来?
我现在都是一个提交一个语句,光这个表都N十条语句求教
$count = $_SGLOBAL['db']->num_rows($count_vip);这样统计了一下非VIP的数字
然后又需要统计某个时间段的"SELECT id FROM oa_guest WHERE time > 时间戳 and time < 时间戳"
然后又需要其他类型 "SELECT count(id) FROM oa_guest group by classid"
又来个
"SELECT id FROM oa_guest WHERE rank = 'A'";
"SELECT id FROM oa_guest WHERE rank = 'B'";
"SELECT id FROM oa_guest WHERE rank = 'C'";
"SELECT id FROM oa_guest WHERE rank = 'D'";等等,需要统计这个表的东西有数十个有没有什么方法,能用少量的语句来一下根据不同条件统计出来?
我现在都是一个提交一个语句,光这个表都N十条语句求教
解决方案 »
- 这个SQL语句为什么会出错?
- 求一个SQL语句
- Mysql存储过程的合并语句?
- 急:为何不能远程连接Linux下的mysql?
- mysql中怎么做能每个表建一个数据文件,然后索引和数据文件分开?
- 求助:winform程序用的mysql数据库如何生成不用在使用端安装mysql服务器的程序
- 使用query()循环插入出现MySQL server has gone away错误
- delete from emp-status 提示-status 附近语法错误,我是要删除这个表里所有信息
- 如何让mysql 新加的用户立即生效,而不重起mysql?
- mysql如何查询某一天所在周的周一至周日的数据?
- Mysql数据库查询问题
- mysql连接不上了
可以用字符串累计生成SQL语句的方法来执行不同的SQL语句
"SELECT id FROM oa_guest WHERE rank = 'A'";
"SELECT id FROM oa_guest WHERE rank = 'B'";
"SELECT id FROM oa_guest WHERE rank = 'C'";
"SELECT id FROM oa_guest WHERE rank = 'D'";
这4条你是要得到一个记录集还是4个记录集?
如果是一个的话,可以用IN(),如果是4个,那就必须分开写了。
每条语句都要统计各自的数量$count = $_SGLOBAL['db']->num_rows($count_vip);
select id,sum(if(rank = 'A',1,0)),sum(if(rank = 'b',1,0)),sum(if(rank = 'c',1,0)),sum(if(rank = 'd',1,0)) from tt group by id
建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。