php - 如何在 MySQL 中显示导致计算总数的所有单独字段?

标签 php mysql sql

我想得到一些帮助来解决我的问题,我正在显示一段时间内获得的总销售额,我已经成功完成了这一点,我现在需要的是如何显示导致总销售额的所有单独价格。例如总共是10个,我买了苹果4个,橙子6个,10就是总价。

我在这里有一个使用输入类型日期在某个时间段内显示它的查询,

$datefrom   = $_GET['datefrom'];
$dateto     = $_GET['dateto'];
$qry = "SELECT sum(order_detail.quantity*order_detail.price) as chenes, orders.date
        FROM order_detail 
        LEFT JOIN orders ON order_detail.orderid=orders.serial
        WHERE date(orders.date) BETWEEN '$datefrom' AND '$dateto'";

mysql_set_charset("UTF8");
$result = @mysql_query($qry);

while ($row=mysql_fetch_array($result)){
    echo "Sales from ".date("F d Y",strtotime($datefrom))." ";
    echo "to ".date("F d Y",strtotime($dateto))." are a total of ";
    echo "₱".number_format($row['chenes'],2);
}

这是我的代码,用于显示每个 orderid 的单独价格。

$AAA = "SELECT order_detail.quantity,order_detail.price,order_detail.orderid, orders.date
        FROM order_detail 
        LEFT JOIN orders ON order_detail.orderid=orders.serial
        WHERE orderid=3";
$BBB=@mysql_query($AAA);
while($CCC=mysql_fetch_array($BBB)){
    echo "<br>".$CCC['price']."<br>";
}

它可以工作,但到目前为止我不知道如何在没有 orderid 的情况下自动显示它。

请帮我显示每个价格,因为到目前为止我只显示了总计,而我现在需要的是显示总计及其分割。我已经尝试过上面的查询,到目前为止我被困住了。请帮忙 。谢谢。

最佳答案

通过使用此查询,您将在每个 orderid 的不同两列中获得以逗号分隔的数量和价格。

SELECT GROUP_CONCAT(IFNULL(od.quantity,0)) AS quantity,
       GROUP_CONCAT(IFNULL(od.price,0)) AS price,
       od.orderid,o.date
FROM orders o
    LEFT JOIN order_detail od ON od.orderid=o.serial
GROUP BY o.serial;

关于php - 如何在 MySQL 中显示导致计算总数的所有单独字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26237388/

相关文章:

sql - Rails postgres 按自定义顺序

php - ffmpeg - 来自 rtsp 的实时视频,带有 mp4 碎片

php - 从Mysql表字段中提取数据并将其放入数组中

mysql - Group By mysql在排序时显示不同的记录

sql - 授予 PostgreSQL 中特定数据库的权限

mysql - 从多对多关系的末端选择数据

javascript - .wrap() 元素内数组中的单词

php - 从注册页面删除强制地址字段 :Opencart 2. 3.0.2

c# - 修改密码功能中的加密和解密?

sql - 我需要对 sql 查询进行健全性检查,如果表中存在该值,则返回一个值;如果不存在,则返回默认值