php - 如何对两个日期之间的过滤数据求和?
问题描述
我试图将两个日期之间的选定数据相加,然后按部门分组。有人可以帮我:(我会在这里附上其余的代码。请帮忙。我真的需要完成这个。谢谢大家。
SELECT * FROM salary
WHERE date BETWEEN '".$_POST["from_date"]."' AND '".$_POST["to_date"]."', Sum (total) as total_salary ] from 'salary' group by department";$result = mysqli_query($connect, $query);
$output .= '
<table>
<tr>
<th width="10%">Name</th>
<th width="2%">Position</th>
<th width="2%">Transaction ID</th>
<th width="3%">No of Days</th>
<th width="4%">Rate Per Day</th>
<th width="7%">Undertime</th>
<th width="7%">Gross Pay</th>
<th width="7%">Salary</th>
</tr>
';
if(mysqli_num_rows($result) > 0)
{
while($row = mysqli_fetch_array($result))
{
$output .= '
<tr>
<td>'. $row["name"] .'</td>
<td>'. $row["position"] .'</td>
<td>'. $row["trasactionid"] .'</td>
<td>'. $row["days"] .'</td>
<td>'. $row["rate"] .'</td>
<td>'. $row["undertime"] .'</td>
<td>'. $row["gross"] .'</td>
<td>'. $row["total"] .'</td>
</tr>
';
}
}
else
{
$output .= '
<tr>
<td colspan="5">No Order Found</td>
</tr>
';
}
$output .= '</table>';
echo $output; }
?>
我期待这样的输出。每个部门的工资总额。
Department Total_Salary
Maintenance 30,000
解决方案
我假设您能够成功连接到数据库。我还使用准备语句来避免 sql 注入。
$stmt = $mysqli->prepare("SELECT department, SUM(total) as total_salary FROM salary
WHERE date_time BETWEEN ? AND ? group by department");
$stmt->bind_param("ss", $_POST["from_date"],$_POST["to_date"]);
$stmt->execute();
$result = $stmt->get_result();
$output .= '
<table>
<tr>
<th width="10%">Name</th>
<th width="2%">Position</th>
<th width="2%">Transaction ID</th>
<th width="3%">No of Days</th>
<th width="4%">Rate Per Day</th>
<th width="7%">Undertime</th>
<th width="7%">Gross Pay</th>
<th width="7%">Salary</th>
</tr>
';
if($result->num_rows > 0)
{
while($row = $result->fetch_assoc())
{
$output .= '
<tr>
<td>'. $row["name"] .'</td>
<td>'. $row["position"] .'</td>
<td>'. $row["trasactionid"] .'</td>
<td>'. $row["days"] .'</td>
<td>'. $row["rate"] .'</td>
<td>'. $row["undertime"] .'</td>
<td>'. $row["gross"] .'</td>
<td>'. $row["total"] .'</td>
</tr>
';
}
}
else
{
$output .= '
<tr>
<td colspan="5">No Order Found</td>
</tr>
';
}
$output .= '</table>';
echo $output; }
?>
推荐阅读
- stormcrawler - 用逗号和分号分隔关键字
- schema - Flatbuffers:如何允许单个字段使用多种类型
- vba - 带 4 位小数的 VBA 除法
- python - 如何抓取 Instagram 个人资料链接 BeautifulSoup?
- powerbi - 在行为类似于 powerBI 中的列计算的度量中使用切片器值的解决方法
- php - SetupDatabase() Croogo 3.0.5 [已修复] 后出现错误 500
- c# - 在一个窗口中以两种不同的方式样式化 WPF 树
- php - Jquery,Ajax保存到数据库
- sql - 在表中创建 100 个连续整数的表的最简单方法?
- c# - 过滤功能在 ASP.NET MVC 中不起作用