ускорить запрос с несколькими внутренними объединениями в доступе мс - PullRequest
0 голосов
/ 28 января 2019

как говорит Титтл, мне нужно улучшить этот запрос, который я сделал в ms доступе, таблицы взяты из связанной БД.я не могу их проиндексировать.Мне нужна помощь, чтобы понять, где это так долго ... Есть ли какая-нибудь функция, как EXPLAIN для доступа?мне нужно разместить больше столбцов в какой-то группе?что мне нужно сделать, чтобы улучшить скорость этого (группа по первому выбору имеет 4M строк, но после группировки имеет только 321 КБ, и требуется 20 минут для запуска, когда ноутбук не падает)

SELECT a.SEQ_NO, 
       b.SKU, 
       b.maxdate, 
       (a.BASE_COST/a.EXCHANGE) AS BASE_COST, 
       (a.NET_COST/a.EXCHANGE) AS NET_COST, 
       (a.NET_NET_COST/a.EXCHANGE) AS EXCHAGED_NET_NET_COST, 
       a.NET_NET_COST, 
       (a.DEAD_NET_NET_COST/a.EXCHANGE) AS DEAD_NET_NET_COST, 
       (a.LANDED_COST/a.EXCHANGE) AS LANDED_COST, 
       (a.POSEIMA/a.EXCHANGE) AS POSEIMA, 
       (a.TOTAL_BONUS/a.EXCHANGE) AS TOTAL_BONUS, 
       (a.IEC/a.EXCHANGE) AS IEC, 
       (a.IEC_BONUS/a.EXCHANGE) AS IEC_BONUS, 
       (a.ECO_INVOICE_FORN/a.EXCHANGE) AS ECO_INVOICE_FORN_SYSTEM, 
       (a.ECO_INVOICE/a.EXCHANGE) AS ECO_INVOICE_SYSTEM, 
       (a.ECO_MERCHANDISE/a.EXCHANGE) AS ECO_MERCHANDISE_SYSTEM, 
       c.SUPPLIER, 
       c.SUP_NAME, 
       d.UPC, 
       d.PRIMARY_UPC_IND, 
       f.BRAND, 
       g.DEPT, 
       g.DESC_UP, 
       g.CLASS, 
       g.SUBCLASS, 
       h.AV_COST, 
       h.UNIT_RETAIL AS Last_of_unit_retail, 
       h.STATUS, i.[UNIT VALUE], 
       i.[INITIAL DATE], 
       i.[END DATE] INTO PRICELIST
FROM (((((((RMS_MC_NB_PRICELIST_COST AS a INNER JOIN (SELECT MAX(SEQ_NO) AS 
ID, SKU, MAX(ACTIVE_DATE) AS maxdate FROM RMS_MC_NB_PRICELIST_COST GROUP BY 
SKU)  AS b ON a.SEQ_NO = b.ID)
INNER JOIN RMS_MC_SUPS AS c ON a.SUPPLIER = c.SUPPLIER)
INNER JOIN RMS_MC_UPC_EAN AS d ON b.SKU = d.SKU) 
INNER JOIN RMS_MC_WIN_ATTRIBUTES AS e ON b.SKU = e.SKU) 
INNER JOIN RMS_MC_NB_BRAND AS f ON e.NB_BRAND_NO = f.BRAND_NO) 
INNER JOIN RMS_MC_DESC_LOOK AS g ON b.SKU = g.SKU) 
INNER JOIN RMS_MC_WIN_STORE AS h ON b.SKU = h.SKU) 
LEFT JOIN MAPA_APOIOS_SISO AS i ON b.SKU = i.[# ARTICLE];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...