gpt4 book ai didi

php - 在 sql 数据库和绘图服务之间调整格式

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:53:16 24 4
gpt4 key购买 nike

我正在尝试找出解决此问题的明智方法。在我的 MySql 服务器中,我有这个简化表: enter image description here

如您所见,这是一个统计表,我有兴趣绘制每天独立于 ip 的访问次数(profile_visittype 列下)从数据的开头开始,这意味着我必须查询类似WHERE type=profile_visit AND user_url=xxx 的内容。但是,这给了我一堆代表每次访问的行。

问题是,我如何使用从查询中检索到的原始数据来获取按天(我不关心时间)的总访问量的数组?

我使用的是 PHP,使用 php 脚本进行改编是个好主意,还是可以仅使用 MySQL 查询来完成?

如果我到达包含一天总访问量的数组,我可以简单地调整我需要的格式:

$result=mysql_query("SELECT * FROM ".table_stats." WHERE user_url='xxx' AND type='profile_visit'");
echo "data.addRows([";
while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$salida = $salida . "['".$row['date']."', $row['total']],";
}
$salida = rtrim($salida, ",");
echo $salida . "]);";

感谢您对此的任何帮助和指导。

最佳答案

您可以直接从 SQL 中轻松地执行此操作,这比从数据库中检索信息然后使用 php 处理它运行得更快。查询应如下所示:

SELECT datetime, COUNT(id_stat) as numVisits WHERE type="type_profile" AND user_url = "xxx" GROUP BY DATE(DATE_SUB(datetime, INTERVAL 1 DAY))

这将返回按天分组的访问次数 (numVisits),以及当天记录的最低日期时间。

不知道你要不要只显示当天的信息。如果是这样,您将需要使用 php 修改数据库提供的字符串。


使用您的示例,查询结果为:

日期时间 | 访问次数
2011-11-10 12:05:44 | 9
2011-11-12 20:06:06 | 3
...

关于php - 在 sql 数据库和绘图服务之间调整格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8122468/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com