これは非常にトリッキーです...
Products
表 -> 製品には複数の色があります..
特定の色の製品を戻すストアド プロシージャが必要です。
たとえば、サンタの帽子には「緑」と「赤」があります.「緑」と「赤」を含むすべての製品が必要です.「緑」または「赤」だけでなく、両方..
これは私がこれまでに持っているものです...
問題
- 両方ではなく、どちらかまたはいずれかの色を持つ製品を復活させます..
- 重複レコード..
コード:
DECLARE @COLORS VARCHAR(MAX) = 'Red, Green'
SELECT *
FROM Products p
LEFT JOIN Product_Colors_Bridge b ON b.ProductID = p.ProductID
LEFT JOIN Product_Colors c on c.ID = b.ColorID
CROSS JOIN dbo.SplitString(@COLORS, ',', NULL)
WHERE CHARINDEX(token, Color) <> 0