У меня есть 2 таблицы (есть больше, но ООН, связанные с вопросом) optionValue
и productStock
объединить несколько полей в одной таблице
Я хочу, чтобы получить имена опций из таблицы OptionValue для каждого option1, option2, OPTION3 (запрос ниже, поможет сделать больше смысла)
ниже моя попытка, текущий запрос работает только тогда, когда все параметры установлены, но возвращает нулевое значение, если какой-либо параметр не задан:
SELECT s.option1, n1.name s.optionName1, s.option2, n2.name s.optionName2, s.option3, n3.name s.optionName3 FROM productStock as s INNER JOIN optionValue n1 on s.option1 = v1.optionValueID INNER JOIN optionValue n2 on s.option2 = v2.optionValueID INNER JOIN optionValue n3 on s.option3 = v3.optionValueID WHERE s.productStockID = 1
Я понимаю, почему это не работает, потому что, когда опция null
Ther нет матчей в optionValue
таблице, но им не уверен, как это исправить (если это поправимо)
Я прочитал в нескольких местах об использовании IN или COALESCE, но я не понимаю, как их использовать.