ฉันกำลังพยายามสร้างชุดผลิตภัณฑ์ตามอาร์เรย์รหัสผลิตภัณฑ์และเรียงลำดับชุดสะสมตามอาร์เรย์รหัส
$productIds = array(318,310,311);
$collection = Mage::getModel('catalog/product')
->getCollection()
->setOrder('entity_id', 'asc') // This will not do the job
->addAttributeToSelect('*')
->addAttributeToFilter('status', 1)
->addAttributeToFilter('entity_id', array(
'in' => $productIds,
));
ฉันต้องการที่จะรวบรวมจัดเรียงตามที่ปรากฏใน$productIds
อาร์เรย์ที่มีแต่เหนือรหัสจะกลับมาจัดเรียงคอลเลกชันเช่น318, 310, 311
310,311, 312
เป็นไปได้โดยไม่ใช้แบบสอบถาม MySQL ธรรมดาตามที่ระบุด้านล่าง?
SELECT *
FROM catalog_product_entity
WHERE entity_id IN (318,
310,
311)
ORDER BY FIELD(entity_id, 318, 310, 311);