我有一个MySQL表payment
,用于存储客户的所有与付款相关的数据。表字段是:fileNo
,clientName
,billNo
,billAmount
,status
。我想构建一个搜索表单,在其中输入fileNo
或clientName
,这将生成一个表,该表将获取该文件号或客户端名称(status = 0
(未付费))的所有记录。 billAmount
是浮点数。
我的MySQL不好,但这是我的SQL版本,文件编号
$sql = "SELECT * FROM `payment` WHERE `fileNo` = '$fileNo' AND `status` = '0'";
SQL by clientName
$sql = "SELECT * FROM `payment` WHERE `clientName` = '$clientName' AND `status` = '0'";
无论采用哪种方式进行查询,我都需要针对该fileNo或clientName显示未付的总额。
据我了解,SUM()操作应如下所示:
$sql = "SELECT SUM(billAmount) AS `unpaid` WHERE `fileNo` = '$fileNo' AND `status` = '0'";
要么
$sql = "SELECT SUM(billAmount) AS `unpaid` WHERE `clientName` = '$clientName' AND `status` = '0'";
我的问题是,我对SUM()操作是否正确?以及如何获得我选择为
unpaid
的未付总金额?我可以将其存储在变量中吗?任何想法,建议或资源链接将不胜感激!
最佳答案
我认为您应该使用第二个查询,但是您错过了WHEre子句
$sql = "SELECT SUM(billAmount) AS `unpaid` FROM payment WHERE `clientName` = '$clientName' AND `status` = '0'";
您的未付总金额是的,您无法像那样获取变量
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
ehco $row['unpaid'] ; <------ this will give you the unpaid amount.
当然,在您获取查询之后。