【发布时间】:2014-03-28 17:35:32
【问题描述】:
我有一个 MySQL 数据库,其中有一个表用作代表名称 id 和他/她各自的经理的主列表,一个用作经理列表的表,以及四个用作时间间隔的附加表其中记录了每日销售数据(接听电话、每次通话后用时、收入、信封、笔等)。我正在尝试每天四次收集单个给定经理下每个代表的所有统计数据。我的想法是,我应该首先收集给定经理下的名称和 ID,然后使用该数组(?)通过各种旅游间隔运行查询以收集销售统计信息。最好的方法是什么?
<?php
include 'db_connect.php';
// Get last name of manager
$query = "SELECT * FROM managers WHERE id = '" . $_SESSION['manager_name'] ."';";
$result = $mysqli -> query($query);
$row = $result -> fetch_array(MYSQLI_NUM);
$manager_first = $row[1];
$manager_last = $row[2];
// Get team members
$rep_query = "SELECT * FROM rep_master WHERE leader = '" . $manager_last . "';";
$rep_list = array();
$rep_result = $mysqli -> query($rep_query);
if ($rep_result) {
while ($rep_row = $rep_result -> fetch_row()) {
array_push($rep_list, $rep_row[1] . " " . $rep_row[2]);
}
};
sort($rep_list);
print_r($rep_list);
// Stat query (using my ID as a testing point)
$stat_query = "SELECT id, total_calls, acw, revenue, envelopes, pens, other FROM tour_1 WHERE id='T441241';";
// Get row data
$stat_row = $stat_result -> fetch_array(MYSQLI_NUM);
echo '<br /><br />';
print_r($stat_row);
?>
【问题讨论】:
-
这听起来可以通过使用两个 JOINS 并对 4 个表中的数据执行 UNION 在单个查询中完成。这是首选还是有任何条件要求单独完成查询?