SQL запрос на исключение еженедельных данных, если найден один ноль - PullRequest
0 голосов
/ 25 марта 2020

Справочная информация. В сценарии предоставления в розничном магазине для TSHIRTS для любой комбинации стиля и цвета у нас есть размерная шкала от xs до xxl.

Хотелось бы достичь:

В любом данной недели для любого размера в комбинации style-color-store, имеющей ONHANDUNIT, равной нулю в хранилище, затем исключите все хранилище style-color-store (со всеми другими размерами) для этой конкретной недели из результирующих данных.

Может Кто-нибудь, пожалуйста, помогите построить эту логику c?

Код выглядит следующим образом:

SELECT

    mat."BASIC_MATERIAL" As SKU,
    mat."DIVISION" As Division,
    mat."DEPARTMENT" As Department,
    RIGHT(mat."STYLE",5) AS Base_Style_ID,
    mat."COLOR" As Color_Code,
    mat."SIZE" As SizeKey,
    r."WEEK" As Fiscal_Week,
    r."STORE" As Store_Location,


    IFNULL(SUM(CASE WHEN (r."CHANNEL" = 'MARKET' AND r."STORE" NOT IN ('abcd','def','xyz')) THEN r."ONHANDUNIT" ELSE 0 END),0) As Store_OHU


FROM GLOBAL_REPORT As r
JOIN MATERIAL As mat On r."aMAT" = mat."bMAT"

WHERE r."WEEK" BETWEEN '201940' AND '202012'

AND mat."DEPARTMENT" = 'TSHIRTS'

GROUP BY
    mat."BASIC_MATERIAL",
    mat."DIVISION",
    mat."DEPARTMENT",
    mat."STYLE",
    mat."COLOR",
    mat."SIZE",
    r."WEEK",
    r."STORE"

Данные BW для примера будут выглядеть следующим образом:

SKU Base_Style_ID   Color_Code  SizeKey Store_Location  Week    Store_OHU
12345BK0001S MKNITS TSHIRT  12345   BK0001  S   1/2020 111  50
12345BK0001M MKNITS TSHIRT  12345   BK0001  M   1/2020 111  10
12345BK0001L MKNITS TSHIRT  12345   BK0001  L   1/2020 111  20
12345BK0001S MKNITS TSHIRT  12345   BK0001  S   2/2020 112  50
12345BK0001M MKNITS TSHIRT  12345   BK0001  M   2/2020 112  0
12345BK0001L MKNITS TSHIRT  12345   BK0001  L   2/2020 112  20

Данные ВЫХОДА будут такими, как показано ниже, за исключением недели 2/2020, так как размер M имеет 0 на единицу в магазине.

SKU Base_Style_ID   Color_Code  SizeKey Store_Location  Week    Store_OHU
12345BK0001S MKNITS TSHIRT  12345   BK0001  S   1/2020 111  50
12345BK0001M MKNITS TSHIRT  12345   BK0001  M   1/2020 111  10
12345BK0001L MKNITS TSHIRT  12345   BK0001  L   1/2020 111  20
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...