mySQL算出一个或两个以上的人数?
数据库查询结果:
在11/11,ID1
购买了3次
在11/11,ID2
购买了10次
在11月12日,ID36
购买了1次
在11月12日,ID37
购买了1次
SQL语句「$ chartData」
选择
count(id)为次,
ID,
FROM_UNIXTIME(add_time,'%m /%d')为add_date
FROM user_order
GROUP BY id
? 疑问
我目的是想找出整月份该天「购买一次」的有几人(几笔),购买两次以上的有几人
我这样的语句是对的吗?
我目的是要丢到谷歌的图表,但我发现这样好像不太对,我自己也找不到原因......
https://developers.google.com...
他要的格式是这样
data.addRows([
[1,37.8,80.8,41.8],
[2,30.9,69.5,32.4],
[3,25.4,57,25.7],
[4,11.7,18.8,10.5],
[5,11.9,17.6,10.4],
[6,8.8,13.6,7.7],
[7,7.6,12.3,9.6],
[8,12.3,29.2,10.6],
[9,16.9,42.9,14.8],
[10,12.8,30.9,11.6],
[11,5.3,7.9,4.7],
[12,6.6,8.4,5.2],
[13,4.8,6.3,3.6],
[14,1,4,6.2,3.4]
]);
我的PHP脚本
foreach($ chartData as $ key){
$ new = null;
$ old = null;
if($ key ['times'] == 1){
$ new + = 1;
$ old = 0;
} else {
$ new = 0;
$ old + = 1;
}
$ data [] = array(
(int)substr($ key ['add_date'],3,2),(int)$ new,(int)$ old
);
}
印出的結果是
[[11,0,1],[11,0,1],[12,1,0],[12,1,0]]
第一个印出日期,第二是只有购买一次的人数,第二是购买两次以上的人数
感觉还是怪怪的,有大神给个思路吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
感觉日期作为条件,再进行ID和购买次数的查询会比较直观
直到遇到问题,一般人的思路都是对的!!!
现在是不知道你遇到什么问题了啊!!!
是sql写的不对?还是表格显示不出来?
这个统计是对的,应该也得把add_date算上
这样你就会发现 id为2的用户不会只在11号买了10件东西,也可能是在12号买了一些其他东西。。。。。
其次 在表格显示的时候数据应该是
这个样子的