我有一个包含几列的表,其中一个是日期列(data1)。
使用的mysql查询是
SELECT * from leads WHERE data1 between date_sub(now(),INTERVAL 1 WEEK) and now()
然后我们从每一行获取数据,运行一些计算并将其存储为单独的变量。
我现在想将此数据与上周的数据(在同一张表中)进行比较,即通过更改 SELECT 查询。
让我展开...
从表中获取本周数据的查询:
$sqld = "SELECT * from leads WHERE data1 between date_sub(now(),INTERVAL 1 WEEK) and now()";
现在我们运行提取数据
$result = mysql_query($sqld) or die(mysql_error());
$num_rows = mysql_num_rows($result);
while($row = mysql_fetch_array($result))
{
$referred = $referred + $row['referred'];
$invalidated = $invalidated + $row['invalidated'];
$tobequalified = $tobequalified + $row['tobequalified'];
}
(以上只是我们需要运行来演示的计算片段)。
现在我们根据本周的数据显示结果
<h4>Totals for this week</h4>
<table class="table stat-table">
<tbody>
<tr>
<td class="value"><? echo $num_rows; ?></td>
<td class="full">Total leads</td>
</tr>
<tr>
<td class="value"><? echo $referred; ?></td>
<td class="full">Referred</td>
</tr>
<tr>
<td class="value"><? echo $invalidated; ?></td>
<td class="full">Invalidated</td>
</tr>
<tr>
<td class="value"><? echo $tobequalified; ?></td>
<td class="full">To be qualified</td>
</tr>
</tbody>
</table>
我现在想更改上面的 $sqld 查询以选择表中属于上周的行,在上面运行相同的计算并在下面显示结果,以便我们可以比较两者。
<h4> Totals for last week</h4>
<table class="table stat-table">
<tbody>
<tr>
<td class="value"><? echo $num_rows; ?></td>
<td class="full">Total leads</td>
</tr>
<tr>
<td class="value"><? echo $referred; ?></td>
<td class="full">Referred</td>
</tr>
<tr>
<td class="value"><? echo $invalidated; ?></td>
<td class="full">Invalidated</td>
</tr>
<tr>
<td class="value"><? echo $tobequalified; ?></td>
<td class="full">To be qualified</td>
</tr>
</tbody>
</table>
有没有什么方法可以在不复制所有内容并更改 $sqld 查询的情况下实现这一点?