Я написал код для извлечения города, электронной почты, улицы и других деталей клиентов из таблицы order_address. Вопросы здесь для каждого заказа есть две строки, где для одного строка address_type
- shipping
, а для другого - billing
. При запросе система автоматически извлекает данные из второй строки, которая является биллинговой. Я хочу данные строки с доставкой типа адреса. Как это можно достичь? Может ли кто-нибудь дать мне знать, как я могу использовать предложение where здесь, чтобы фильтровать строки только с помощью address_type = "shipping".Как добавить предложение where с левым соединением
$select = $collection->getSelect();
$select->joinLeft(array('payment' => $collection->getTable('sales/order_payment')), 'payment.parent_id=main_table.entity_id', array('payment_method' => 'method'));
$select->joinLeft(array('email' => $collection->getTable('sales/order_address')), 'email.parent_id=main_table.entity_id', array('customer_email' => 'email','customer_phone' => 'telephone','shipping_street' => 'street','shipping_city' => 'city','shipping_postcode' => 'postcode','shipping_region' => 'region','shipping_country' => 'country_id'));
$select->join('sales_flat_order_item', '`sales_flat_order_item`.order_id=`main_table`.entity_id', array('skus' => new Zend_Db_Expr('group_concat(`sales_flat_order_item`.sku SEPARATOR ", ")')));
$select->group('main_table.entity_id');
}
Это принесло мне данные, которые я искал. Спасибо :) –
Больше всего Добро пожаловать @AkshayVasu – user247217