У меня есть таблица, содержащая столбец, ссылающийся на другие строки в других таблицах или нет. Например: - таблица Table_Cart имеет столбец product в виде числа - если продукт является фруктом, то он указывает на строку в таблице Table_Fruit, - если продукт является овощем, то он указывает на строку в таблице Table_Vegetable - если нет из вышеперечисленного мы можем оставить значение пустым
Мне нужно сгенерировать вывод, например, указав для каждого продукта, является ли он "фруктовым" / "овощным" / пустым, чтобы оно выглядело как
| product | category |
| 1111111 | fruit |
| 2222222 | vegetable|
| 1111113 | fruit |
| 4444444 | |
Сегодня sql, который я написал, -
select T1.product, T2.category
from Table_Cart T1 left join
(select product, "fruit" as "category" from Table_fruit
union
select product, "vegetable" as "category" from Table_vegetable
) T2
on T1.product = T2.product
Есть ли лучший способ написать это?
Спасибо