Мне нужно создать данные для «Клиент, который купил это, также купил» с таблицей MySQL, которую я создал на основе заказPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Мне нужно создать данные для «Клиент, который купил это, также купил» с таблицей MySQL, которую я создал на основе заказ

Сообщение Гость »


Мне нужно создать данные для «Клиент, который купил это, также купил» с помощью таблицы MYSQL, которую я создал на основе заказов. Мне нужно рассчитать частоту, нет. порядка и процента для комбинации продуктов, но проблема в том, что у меня 109 миллионов записей.
Идентификатор заказа идентификатор продукта Артикул связанныйSKU RelatedID Комбинация Статус 32457 4342 IC-1159524 IC-1179522 16289 4342,16289 завершено 32457 4664 IC-1161516 IC-1179522 16289 4664,16289 завершено 32457 16026 IC-1164185 IC-1179522 16289 16026,16289 завершено 32457 16289 IC-1179522 IC-1159524 4342 16289,4342 завершено 32457 16289 IC-1179522 IC-1161516 4664 16289,4664 завершено 32457 16289 IC-1179522 IC-1164185 16026 16289,16026 завершено 32457 16289 IC-1179522 IC-1182417 18079 16289,18079 завершено 32457 16289 IC-1179522 IC-1101030 7942 16289,7942 завершено 32457 16289 IC-1179522 IC-1184031 18404 16289,18404 завершено 32457 16289 IC-1179522 PACK-0126 19511 16289,19511 завершено 32457 16289 IC-1179522 IC-1026089 13301 16289,13301 завершено 32457 18079 IC-1182417 IC-1179522 16289 18079,16289 завершено 32457 7942 IC-1101030 IC-1179522 16289 7942,16289 завершено 32457 18404 IC-1184031 IC-1179522 16289 18404,16289 завершено 32457 19511 PACK-0126 IC-1179522 16289 19511,16289 завершено 32457 13301 IC-1026089 IC-1179522 16289 13301,16289 завершено
Создайте эту временную таблицу для вычислений:

INSERT INTO `cwbtab_analytics_table` (order_id,ProductID,ProductSku,RelevantSku,RelatedID,комбинация,статус) ВЫБИРАТЬ t1.order_id как order_id, t1.product_id КАК ProductID, t1.sku AS ProductSku, t2.sku AS RelevantSku, t2.product_id как связанныйID, CONCAT( t1.product_id, ',', t2.product_id) как комбинация, sales_order.status как статус Из sales_order_item t1 INNER JOIN sales_order_item t2 ВКЛ t1.order_id = t2.order_id ВНУТРЕННЕЕ СОЕДИНЕНИЕ sales_order на t1.order_id = sales_order.entity_id где sales_order.status IN («отправлено», «завершено») И t1.product_id t2.product_id; В этом запросе будут вставлены данные из cwbtab_analytics_table в эту таблицу с вычислениями
INSERT INTO `nhd_customer_who_bought_this_also_bought` (product_id,sku, linked_product_id, linked_product_sku, Frequency,orders,bought_percent) ВЫБИРАТЬ pp.productID как product_id, пп.ПродуктСку как артикул, pp.RelatedID как linked_product_id, pp.RelevantSku как linked_product_sku , COUNT(*) КАК частота, COUNT(CASE WHEN FIND_IN_SET(pp.productID, t.combination) AND FIND_IN_SET(pp.RelatedID, t.combination) THEN t.order_id END) AS заказы, COUNT(CASE WHEN FIND_IN_SET(pp.productID, t.combination) AND FIND_IN_SET(pp.RelatedID, t.combination) THEN t.order_id END) * 100,0 / COUNT(*) AS buy_percent ОТ cwbtab_analytics_table_1 стр. ПРИСОЕДИНИТЬСЯ cwbtab_analytics_table_1 t ON FIND_IN_SET(pp.productID, t.combination) ИЛИ FIND_IN_SET(pp.RelatedID, t.combination) ГРУППА ПО pp.productID, pp.RelatedID, pp.ProductSku, pp.RelevantSku; ИМЕЮЩИЙ заказов > 2
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»