যোগদানের প্রশ্নের সাথে ম্যাজেন্টো সংগ্রহ করে কীভাবে গ্রুপ ব্যবহার করবেন use


13

মডিউলটির অ্যাডমিন গ্রিডে আমি সংগ্রহটি পেতে এবং গ্রাহক আইডির মাধ্যমে তাদের গোষ্ঠীকরণ করতে এই কোডটি ব্যবহার করছি

$collection = Mage::getModel('referafriend/statistics')->getCollection();
$collection->getSelect()->group('entity_id');
$this->setCollection($collection);

তবে এখানে প্রত্যেকের কাছে নাম এবং ইমেলের মতো গ্রাহক তথ্যের জন্য আমাকে রেন্ডারার এবং ফিল্টার ফাংশন ব্যবহার করতে হবে entity_id। আমি আমার মডিউলটির টেবিল সহ গ্রাহক মডেলটিতে যোগদান করতে চাই। এই জন্য আমি এই কোড লিখেছি

 $collection = Mage::getModel('customer/customer')->getCollection()
 ->addNameToSelect();
$collection->getSelect()->join(array('refer' => 'table_name'),'refer.entity_id = e.entity_id'
          ); 
   $collection->getSelect()->group('entity_id'); 
   $collection->addAttributeToSelect('*');

তবে এটি আমাকে এই ত্রুটি দেয়

SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'entity_id' in group statement is ambiguous

কোন সাহায্যের অত্যন্ত প্রশংসা করা হবে।


1
এটি হওয়া উচিত -> গোষ্ঠী ('e.entity_id');
অমিত বেরা

আপনার কেন প্রয়োজন তা কিছুটা বিশদ সহ উত্তর হিসাবে এটি যুক্ত করা উচিতe.
জোনাথন হাসি

এই নির্বোধ ভুলের জন্য দুঃখিত। @ অমিতবেরা আপনার সহায়তার জন্য ধন্যবাদ এবং দয়া করে এটিকে উত্তর হিসাবে যুক্ত করুন যাতে এই প্রশ্নটি বন্ধ হয়ে যেতে পারে।
হারিস

উত্তর:


26

আপনি সারণী নাম যোগ করতে হবে group by condition.As তুমি করেছ not added on conditions table nameটেবিলে গ্রুপ ( 'ENTITY_ID') তাইquery did not find columns name

 getSelect()->group('e.entity_id');

যুক্তিটি হ'ল:

$collection->getSelect()->group('TABLE_NAME.FIELD_NAME')

1
অ্যাডিশনে, আপনার যদি একাধিক ক্ষেত্রের দ্বারা দলবদ্ধকরণের প্রয়োজন হয় তবে কেবল আরও -> গ্রুপ () ধারাগুলি -> গ্রুপ ('ফিল্ড 1') -> গ্রুপ ('ফিল্ড 2') যুক্ত করুন;
গ্রেগসি

আমি গ্রুপ অনুসারে ইউনিক পণ্য অর্ডার করতে চাই। আমার 2 টি একই অর্ডার আইটেম সহ 2 অর্ডার রয়েছে। বর্তমানে এটি গ্রিডে 4 টি সারি প্রদর্শিত হয়। তবে গ্রুপ অনুসারে আমার 2-সারি প্রয়োজন।
duদুক মিতেশ

আপনার কোডটি ভাগ করুন
অমিত বেরা

$collection = $object_manager->create('\Magento\Sales\Model\Order\Item')->getCollection(); $collection->getSelect()->join( ['order' => $this->getTable('sales_order')], 'order.entity_id = main_table.order_id and (if(main_table.parent_item_id IS NULL,main_table.price != 0.0000,main_table.parent_item_id IS NULL))', [ 'order_number' => 'order.increment_id', 'order_store_id' => 'order.store_id', ] );
duদুক মিতেশ

আমি parent_item_idআদেশ অনুসারে গ্রুপ করতে চাই ।
duদুক মিতেশ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.