This is a tough one because I know so little about your schema, but I think the following should work. DISCLAIMER: I have only ever worked in MSSQL, not MYSQL, so some of the syntax may be slightly different...
INSERT INTO RESULTS(Month, Region, Item, Yield12mo, UnitsShipped)
select m.Period,s.Region,s.Item,avg(s.Yield), sum(s.ShippedQty)
from SALES s INNER JOIN PERIOD m -- my preferred method, but yours may work fine
ON s.BuyDate >= date_sub(m.StartDate,INTERVAL 12 MONTH)
and s.BuyDate <= m.EndDate
where
--First we'll try and filter out anything that already exists in RESULTS
s.Sales NOT IN
(
select Sales.Sales
from Sales
inner join Results
ON sales.Region = Results.Region
AND sales.Item = Results.Item
)
group by s.Item
--We still have to make it so that we only get ones that have a ShippedQty >=10.
HAVING sum(s.ShippedQty) >= 10