我们正在尝试收集使用特定优惠码“NEWCUSTOMER”的每个人的数据。我们正在尝试获取订单详细信息,包括他们的姓名,电子邮件地址以及他们订购的内容。
rule_id是否以任何方式连接到数据库中的订单?当您尝试编写自己的mySQL语句来计算此信息时,magento数据库似乎并不那么友好。
谢谢!
答案 0 :(得分:4)
这与我之前为您回答的问题类似:Find the name and email address of non-members who used coupon code in Magento
订单上使用的优惠券代码实际上是订单的属性:coupon_code
从您的问题中可以看出,您是直接查询数据库,如果是,那么您正在查找coupon_code
表中的sales_flat_order
字段。
这是sql:
SELECT `customer_firstname`, `customer_lastname`, `customer_email` FROM `sales_flat_order` WHERE `coupon_code` = 'your_awesome_coupon_code' AND `customer_group_id` = 0
或者,通过magento ......
$orderCollection = Mage::getModel('sales/order')->getCollection()
->addAttributeToSelect('customer_firstname')
->addAttributeToSelect('customer_lastname')
->addAttributeToSelect('customer_email')
->addAttributeToSelect('customer_group_id')
->addAttributeToSelect('coupon_code')
->addAttributeToFilter('customer_group_id', Mage_Customer_Model_Group::NOT_LOGGED_IN_ID)
->addAttributeToFilter('coupon_code', 'NEWCUSTOMER');