我有完整的数据表,我需要每个表中的相同数据。例如,我选择的第一个表的值为3623,第二个表的值为3852。
我试图将这两个值都放到一个数组中,然后在下面的线上绘制一个图形。我正在使用的代码可以在下面看到,问题是来自第一个foreach循环的值被添加而不是第二个。所以我最终只得到3623而不是3852也是一个问题。
$datay1 = array();
$yes = "not-set";
$sql = "SELECT * FROM `0530-0605` WHERE SearchTerm = :yes";
$stmt = $conn->prepare($sql);
$stmt->bindParam(":yes", $yes);
$stmt->execute();
foreach($stmt as $row) {
$datay1[] = $row['Clicks'];
}
$sql = "SELECT * FROM `0606-0612` WHERE SearchTerm = :yes";
$stmt = $conn->prepare($sql);
$stmt->bindParam(":yes", $yes);
$stmt->execute();
foreach($stmt as $row) {
$datay1[] = $row['Clicks'];
}
print_r($datay1);
答案 0 :(得分:1)
您可以使用UNION ALL
将两个查询的结果合并为
$sql = "SELECT * FROM `0530-0605` WHERE SearchTerm = :yes
UNION ALL
SELECT * FROM `0606-0612` WHERE SearchTerm = :yes1";
$stmt = $conn->prepare($sql);
$stmt->bindParam(":yes", $yes);
$stmt->bindParam(":yes1", $yes);
$stmt->execute();
foreach($stmt as $row) {
$datay1[] = $row['Clicks'];
}