Edit: I didn't notice that this has been suggested already in comments by ypercube. So crediting him here.
Ultimately its up to you and your exact requirements. But here are following suggestions:
SKU
s does not exists ifProducts
does not exist. In other words, you cannot make aSKU
as a standalone entity. The basic entity therefore isProducts
. And as aProduct
can have multipleSKU
, make this relationship many to many.- So if you follow point 1, You can safely remove
shop_skus
relationship because now, ashop
can selectproducts
viashop_products
and asproducts
are in many-many relationship withSKU
you can enableshop
to pick suitableSKU
directly using suitable query.