Как разделить строку на один из трех пунктов в зависимости от того, как он называется? - PullRequest
0 голосов
/ 11 июня 2018

Итак, вопрос в том, что у меня есть три разных магазина, у меня в каждом магазине куча товаров, и я хочу рассчитать процентное соотношение товара по сравнению с общим количеством товаров в этом магазине.Таким образом, с тремя магазинами у меня есть три разных количества продуктов, которые я хочу разделить на продукты в зависимости от того, в каком магазине они находятся. Однако в итоге происходит то, что Query делит каждый продукт на стоимость первого магазина, как мне получитьчтобы указать, какое значение делить в зависимости от магазина, использующего этот запрос, если это возможно?

Изображение моей текущей таблицы, использующей этот запрос.Image of my current table using this query.

SELECT 
ss.name,
b.name,
y1.number,
(SUM(svs.facings) / y1.number) * 100 AS SecondaryPercentage
FROM
report.scene_visit_summary svs
    LEFT JOIN
static.stores ss ON svs.store_fk = ss.pk
    LEFT JOIN
static.template t ON svs.template_fk = t.pk
    LEFT JOIN
static_new.product p ON svs.product_fk = p.pk
    LEFT JOIN
static_new.brand b ON p.brand_fk = b.pk
    LEFT JOIN
(SELECT 
    SUM(svs.facings) AS number
FROM
    report.scene_visit_summary svs
LEFT JOIN static.stores ss ON svs.store_fk = ss.pk
LEFT JOIN static.template t ON svs.template_fk = t.pk
LEFT JOIN static_new.product p ON svs.product_fk = p.pk
LEFT JOIN static_new.brand b ON p.brand_fk = b.pk
WHERE
    session_uid IN ('**********************' , '**********************', 
'**********************')
GROUP BY ss.name) AS y1 ON y1.number
WHERE
session_uid IN ('**********************' , '**********************',
    '**********************')
    AND t.name NOT LIKE '%Main%'
GROUP BY b.name
...