зарекалась свинья

Nov 09, 2022 17:20

в битрикс не лезть.

например код чтобы получить список контактов из контакт листа

$contact_list = ContactListTable::getList(array(
'filter' => array(
'LIST_ID' => $list_id
),
'select' => array(
'CONTACT_ID'
),
))->fetchAll();

foreach ($contact_list as $contact) {
$db_contact_details = ContactTable::getList(array(
'filter' => array(
'ID' => $contact['CONTACT_ID'],
'>=DATE_INSERT' => $date_from,
'<=DATE_INSERT' => $date_to
),
'select' => array(
'TYPE_ID'
),
'limit' => 10000
));

if ($contact_details = $db_contact_details->fetch()) {
switch ($contact_details['TYPE_ID']) {
case 1:
$emails++;
break;
case 2:
$phones++;
break;
default:
$another++;
}

$all++;
}
}

тоже самое если бы я тупо сделал SQL запрос

SELECT b_sender_contact.TYPE_ID
FROM b_sender_contact
LEFT JOIN b_sender_contact_list
ON b_sender_contact.ID = b_sender_contact_list.CONTACT_ID
WHERE b_sender_contact_list.LIST_ID = $list_id

ну такое. время исполнения скрипта номер 1 - 5.10 ms. скрипта номер 2 - 0.14 ms для 5000 строк

работа, ояебу

Previous post Next post
Up