0

假设我想总结休假表中的持续时间,条件为 Leave_Type = 'Annual' 和 Status = 'Approved'

我的数据库

table leave
{Leave_ID(PK), Leave_Type, Status, Duration, Emp_ID(FK)}

table employee
{Emp_ID(PK), Emp_Name}

我使用以下代码来总结 Duration

$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>

但我得到的输出类似于“资源 id#4”。这不是我想要的输出,它应该是持续时间的总和。mysql_query我打印输出的方式或方式有什么问题吗?

4

4 回答 4

1

你做错了输出!

$AnnualData = mysql_fetch_assoc($Annual);

比输出:

<td><?php echo $AnnualData['SUM(Duration)'];?></td>

如果您愿意,可以像这样(在 sql 查询中)向 sum 语句添加别名:

SUM(Duration) AS total

而不是这样的输出:

<td><?php echo $AnnualData['total'];?></td>
于 2013-09-02T09:05:39.660 回答
0
$query=mysql_fetch_array($Annual);

echo $query[0];

它会打印你想要的东西......

于 2013-09-02T09:16:03.730 回答
0

您只是在运行查询,您需要获取数据。

将 mysql_query 更改为mysqli_query(不推荐使用前一个),然后使用mysqli_fetch_assoc($Annual)

于 2013-09-02T09:06:23.620 回答
0

您应该添加;

$annual2 = mysql_fetch_array($annual);

然后

<?PHP echo $annual2['Duration']; ?>

希望这可以帮助 :)

于 2013-09-02T09:06:36.337 回答