gpt4 book ai didi

php - 如何使用 Google Charts 和 MySQL 在具有相同小时(日期时间)的不同表中显示数据?

转载 作者:行者123 更新时间:2023-11-30 21:30:35 24 4
gpt4 key购买 nike

当小时匹配时,我正在尝试显示来自不同表的多维数据。因此,例如,table1 中的 value1 和 table2 中的 value2 应显示在 Y 中,小时显示在 X 中。我使用的是 Google Charts 和 MySQL。当我从单个表中选择内容时,该代码有效,但是当我尝试混合结果时,它会出现此错误:“轴 #0 的数据列不能是字符串类型”

我尝试使用 WHERE 并尝试 JOIN 将表 1 中的日期时间列与表 2 链接,但没有成功。我知道我可能仍然需要格式化 Datetime 以仅选择小时,但我感觉完全被卡住了。

这是我在表 1 中的内容:

enter image description here

在表 2 中:

enter image description here

我正在寻找这样的东西:

enter image description here

代码如下:

 var data = google.visualization.arrayToDataTable([

['Datetime','Value1', 'Value2'],
<?php

$query = "SELECT table1.Datetime, table1.Value1, table2.Value2 ".
"FROM table1 ".
"WHERE table1.Datetime = table2.Datetime ".
"ORDER BY table1.Datetime ASC ".
"LIMIT 24";

$exec = mysqli_query($con,$query);
while($row = mysqli_fetch_array($exec)){

echo "[
'".$row['Datetime']."',
".$row['Value1']." ,
".$row['Value2']."
],";
}
?>

]);

注意:我将图表限制为 24 行,因为插入新数据时(每小时),仅显示最近 24 小时的数据。

最佳答案

我正在回答我自己的问题,但这要感谢 WhiteHat 在评论中提供的反馈。

第一个问题:我没有在 FROM 子句中包含第二个表。

第二个问题:我的数据示例不好,因为我有重复的日期时间值。

第三个问题:通过在代码中添加HOUR函数解决了表格之间的小时匹配问题。见下文:

var data = google.visualization.arrayToDataTable([

['Hour1','Value1', 'Value2'],
<?php

$query = "SELECT HOUR(table1.Datetime) AS Hour1, table1.Value1, table2.Value2 ".
"FROM table1, table2 ".
"WHERE HOUR(table1.Datetime) = HOUR(table2.Datetime) ".
"ORDER BY table1.Datetime ASC ".
"LIMIT 24";

$exec = mysqli_query($con,$query);
while($row = mysqli_fetch_array($exec)){

echo "[
'".$row['Hour1']."',
".$row['Value1']." ,
".$row['Value2']."
],";
}
?>


]);

关于php - 如何使用 Google Charts 和 MySQL 在具有相同小时(日期时间)的不同表中显示数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56447444/

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