在我的管理员面板中,我希望按周,月,年和总计看到所有利润和销售额。
到目前为止,我能够将ap_payment_logs
数据库中记录的事务显示在高级响应表中。在此之上是我试图显示每个保证金的利润:每周,每月每月和总计。通过选择和计算列:txn_amount
。
这一切都适用于添加到该列的普通数字,虽然我的网站的工作方式,它在数字前添加了一个英镑符号(£)
:
£10.00, £20.00, £50.00...
SUM
函数似乎不适用于这个Pound符号,所以我想知道是否有任何简单的方法来执行相同的计算,这对此有用吗?这是我目前的代码:
$result = $conn->query('SELECT SUM(txn_amount) AS value_sum FROM `ap_payment_logs` WHERE `txn_date` >= NOW() - INTERVAL 7 DAY');
$row = mysqli_fetch_assoc($result);
$sum = $row['value_sum'];
echo $sum;
请注意:我无法删除添加£
符号以获得我的结果。
提前致谢!
答案 0 :(得分:0)
有一个像这样的表:
create table dummy (
id int primary key auto_increment,
test varchar(10)
);
表中的这些行:
mysql> select * from dummy;
+----+---------+
| id | test |
+----+---------+
| 1 | 10.0 |
| 2 | 14.0 |
| 3 | €14.0 |
+----+---------+
您可以使用以下select语句获取测试值的总和:
select sum(replace(test, '€', '')) from dummy;
无论如何像Mark Baker我建议将数字列存储在数字字段中,因为它有一些优点(像sum
这样的聚合更容易,排序有效......)。