Возможно, на это ответили, но я прочитал все «похожие названия» и не нашел ответа, который бы лучше описывал то, чего я пытаюсь достичь.
Запрос Mysql:
SELECT
inv.SKU,
inv.misc1,
inv.sizeletter,
inv.has_children,
ins_imb_1.ItemCustomerPriceLevel,
ins_imb_1.ItemNumber,
ins_imb_1.DiscountMarkupPriceRate1
FROM inv
INNER JOIN
ins_imb_1 ON ins_imb_1.ItemNumber
LIKE CONCAT( inv.SKU, '%' )
AND ins_imb_1.ItemCustomerPriceLevel = 'M'
WHERE inv.parent_sku = ''
AND inv.store_quantity > 0
AND inv.SKU LIKE 'ABC%'
AND inv.visible = 'Y'
GROUP BY inv.SKU
ORDER BY inv.SKU ASC
и результаты, которые он возвращает:
SKU sizeword sizeletter has_children ItemCustomerPriceLevel ItemNumber DiscountMarkupPriceRate1
ABC107 NULL L Y M ABC107L 15.95
ABC108 NULL L Y M ABC108S 15.95
ABC109 NULL L Y M ABC109XX 17.45
sizeletter отображается как L (большой) для всех элементов, но ItemNumber имеетразные размеры (представленные последней буквой) и, следовательно, иногда другая цена (поскольку наши большие размеры получают наценку.)
Что я могу сделать, чтобы убедиться, что мое внутреннее соединение идет в порядке того, что доступно?(которые в алфавитном порядке, как правило, L, M, S, X и т. д.)
Таким образом, ItemNumber всегда будет заканчиваться на L, если нет ни одного, в этом случае он пытается M и т. д.
Заранее спасибо!