Вы можете использовать cross apply
, чтобы давать каждую еду каждый месяц. Кажется, это то, что вы хотите.
declare @table table (Food varchar(16), [Month] int)
insert into @table
values
('Pizza',1),
('Burgers',1),
('Salad',1),
('Tuna',2),
('Pizza',2),
('Burgers',2),
('Salad',2)
select distinct
f.Food
,m.Month
from @table f
cross apply (select distinct [Month] from @table) m
order by m.Month
Чтобы узнать, в какие месяцы Tuna
не обслуживался в ...
select distinct [MONTH]
from @table
where [Month] not in (select [Month] from @table where Food = 'Tuna')