Php 将mysql查询转换为magento模型格式
我有下面的查询,我正试图转换为Magento模型格式,但转换后的结果不一样,并得到相同的错误 查询是:Php 将mysql查询转换为magento模型格式,php,mysql,magento,join,zend-framework,Php,Mysql,Magento,Join,Zend Framework,我有下面的查询,我正试图转换为Magento模型格式,但转换后的结果不一样,并得到相同的错误 查询是: SELECT ce_varchar.value AS CODE, sfoi.order_id, sfo.increment_id, COUNT(sfoi.`order_id`) AS totalOrders, ea.attribute_id, ea.attribute_code, pv.value, sfo.created_at FROM
SELECT
ce_varchar.value AS CODE,
sfoi.order_id,
sfo.increment_id,
COUNT(sfoi.`order_id`) AS totalOrders,
ea.attribute_id,
ea.attribute_code,
pv.value,
sfo.created_at
FROM
mage_catalog_product_entity AS ce
INNER JOIN mage_eav_attribute AS ea
ON ce.entity_type_id = ea.entity_type_id
INNER JOIN mage_catalog_product_entity_varchar AS ce_varchar
ON ce.entity_id = ce_varchar.entity_id
AND ea.attribute_id = ce_varchar.attribute_id
AND ea.backend_type = 'varchar'
INNER JOIN mage_sales_flat_order_item AS sfoi
ON sfoi.product_id = ce.entity_id
INNER JOIN mage_sales_flat_order AS sfo
ON sfo.entity_id = sfoi.order_id
INNER JOIN mage_catalog_product_entity_varchar pv
ON pv.entity_id = ce.entity_id
WHERE ea.attribute_id = 1062
AND pv.attribute_id = 96
AND LOWER(sfo.lead_status) IN ('converted', 'unconverted')
AND ce_varchar.value IS NOT NULL
以下是我对Magento模型格式查询的失败尝试
$collection = Mage::getModel('catalog/product')->getCollection();
$collection->getSelect()
->join(array('ea'=>'eav/attribute'),
'ea.entity_type_id = ea.entity_type_id',array(''))
->join(array('ce_varchar'=>'catalog/product_entity_varchar'),
'main_table.entity_id = ce_varchar.entity_id')
->join(array('sfoi'=>'sales/flat_order_item'),
'sfoi.product_id = ce.entity_id',array(''))
->join(array('sfo'=>'sales/flat_order'),
'sfo.entity_id = sfoi.order_id ',array(''))
->join(array('pv'=>'catalog/product_entity_varchar'),
'pv.entity_id = main_table.entity_id',array(''))
->addFieldToSelect('entity_id')
->addFieldToSelect('cut_sample_location')
->addExpressionFieldToSelect('tatalOrders','COUNT(sfoi.`order_id`)','sfoi.order_id')
->addFieldToFilter('ea.attribute_id',1062)
->addFieldToFilter('pv.attribute_id',96)
->addFieldToFilter('sfo.lead_status', array('in' => array('converted',
'unconverted')))
->addFieldToFilter('ce_varchar.value' != null)
->group('main_table.entity_id , ce_varchar.value')
->order('DESC')
->limit(30);
你能描述一下你想要获取的信息吗?这样看起来有点乱。如果需要的话,只需添加一个简单的列表和一个小的描述。我正在尝试根据自定义产品属性检索订单总数,即“cut\u sample\u location”,并按名为lead status的字段过滤订单。您能描述一下您试图检索的哪种信息吗?这样看起来有点乱。如果需要的话,只需添加一个简单的列表和一个小的描述。我试图根据自定义产品属性(即“cut\u sample\u location”)检索订单总数,并按名为lead status的字段过滤订单