假设我想在我的休假表中总结休假期间,条件是Leave_Type =“年度”和状态=“批准”
我的数据库
table leave
{Leave_ID(PK), Leave_Type, Status, Duration, Emp_ID(FK)}
table employee
{Emp_ID(PK), Emp_Name}我使用以下代码对持续时间进行求和
$aid=$_SESSION["eid"];
$Annual = mysql_query("select SUM(Duration)
FROM `leave`
WHERE leave.Leave_Type = 'Annual' and leave.Status = 'Approved'
and leave.Emp_ID = employee.Emp_ID and leave.Emp_ID = $aid");我显示输出的方式
<td><?php echo $Annual;?></td>但我得到的输出类似于"Resourse id#4“。这不是我想要的输出,应该是持续时间的总和。mysql_query和打印输出的方式有什么问题吗?
发布于 2013-09-02 09:05:39
你做错了输出!
$AnnualData = mysql_fetch_assoc($Annual);比产出:
<td><?php echo $AnnualData['SUM(Duration)'];?></td>如果需要,可以向sum语句(在sql查询中)添加别名:
SUM(Duration) AS total比这样的产出:
<td><?php echo $AnnualData['total'];?></td>发布于 2013-09-02 09:06:23
您只需要运行查询,就需要获取数据。
将mysql_query更改为mysqli_query (不推荐前者),然后使用mysqli_fetch_assoc($Annual)
发布于 2013-09-02 09:06:36
你应该加上;
$annual2 = mysql_fetch_array($annual);然后
<?PHP echo $annual2['Duration']; ?>希望这会有所帮助:)
https://stackoverflow.com/questions/18569280
复制相似问题