mysql - Magento 直接 SQL 查询基于优惠券的订单?

标签 mysql magento

我正在尝试为 Magento 编写一个 SQL 查询,它将显示已支付的订单(非零总数)和基于优惠券的订单(零总数)。基于优惠券的订单应除以优惠券所来自的促销事件。然后报告的每一行显示如下:

  • 促销名称(购物车价格规则名称)
  • 订单数
  • 占订单总数的百分比
  • 平均订单总额

我意识到这可能是一个极其复杂的查询,所以如果有人指出我执行此查询所需的表,我会很高兴。欢迎并感谢任何帮助 =)

最佳答案

这似乎已经成功了

SELECT coupon_rule_name                         AS 'Promotion Used'
     , coupon_code                              AS 'Code Used'
     , COUNT(coupon_code)                       AS 'Times Used / Number of Orders'
     , SUM(subtotal)                            AS 'Cumulative Price'

     , SUM(total_paid)                          AS 'Cumulative Paid with Coupon'
     , AVG(total_paid)                          AS 'Average Order Total (W/  Coupon)'
     , AVG(subtotal)                            AS 'Average Order Total (W/O Coupon)'

     , ABS(SUM(discount_amount))                AS 'Cumulative Savings'

     , (
        SUM(discount_amount) - SUM(total_paid)
       )                                        AS 'Cumulative Loss'

     , CONCAT(ROUND((
        COUNT(coupon_code) / (SELECT COUNT(*) FROM sales_flat_order s)
       ) * 100, 1), '%')                        AS 'Percentage'

FROM     sales_flat_order
WHERE    coupon_code        IS NOT NULL
GROUP BY coupon_code
ORDER BY COUNT(coupon_code) DESC;

关于mysql - Magento 直接 SQL 查询基于优惠券的订单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26455273/

相关文章:

php - 使用 magento soap API 获取最新产品

magento - 如何显示 magento 联系页面面包屑?

php - 拖放保存到 mysql 优化

mysql - 一个 SQL 查询来计算不同条件下的记录

caching - magento https + IE8 提示问题

php - Magento 将数据库从开发版更新为上线版

php - 插入账户年龄MYSQL查询

mysql - 如果一个表有关系则加载它的多个关系

mysql 从给定 ID 中获取前 N 条记录

apache - 为什么 XML-RPC API 端点会随机抛出 ProtocolError -1?