Я использовал левое соединение и нашел его полезным. Сегодня я столкнулся с проблемой, когда правая сторона NULL не отображается. Первая таблица категории, которая, как показано ниже:Mysql leftjoin issue with NULL
id name
1 ROR
2 Mutation
3 Partition
Вторая таблица scheme_category, который, как показано ниже:
id scheme_id category_id period
1 12 1 3/2016
2 12 2 3/2016
3 12 1 4/2016
4 12 2 4/2016
5 12 3 4/2016
6 12 1 5/2016
7 12 3 5/2016
За период 3/2016, никакого значения не существует для category_id 3. Аналогично , за период 5/2016, для category_id нет значения. Я написал запрос с использованием категории и таблицы schem_category, так что несуществующие категории в таблице schem_category показаны как NULL:
select category.name, period
from category
left join scheme_category on category.id= scheme_category.category_id
Но этот запрос не показывает никаких полей как NULL. В этом отношении следует руководствоваться.
Это верно, потому что в вашей таблице schem_category содержатся все значения различных категорий, которые пытаются вставить новое значение в категорию, тогда вы получите нулевую запись. –
. Этот запрос, очевидно, не показывал никаких полей как «NULL» для ваших данных образца. – Blank
Пожалуйста, попробуйте этот запрос для вашего решения: 'выберите category.name, период, category_id из категории оставил присоединиться scheme_category на category.id = scheme_category.category_id' –