Yes, there is a solution like you mentioned but it’ll only work if there is exactly one related product for each of your products.
However, if this is not the case you’ll need referencing table containing all relations between products.
You can try adding a new table:
CREATE TABLE dbo.ProductsRelation
(
FirstProductId int not null,
SecondProductId int not null,
PRIMARY KEY (FirstProductId, SecondProductId)
)
In this way, you can retrieve all related products for some product with the query below:
SELECT SecondProductId
FROM ProductsRelation
WHERE FirstProductId = @ProductID