簡単にするために、簡単な質問で説明します。
Product テーブルには、2 つの列を持つ製品定義が含まれています
Product ID -- Product Name
製品の詳細テーブルには、垂直または拡張プロパティとして保存された製品の詳細が含まれています
Product Detail ID -- Product Number -- Key ID -- Value ID
他に 2 つの参照テーブルがあると仮定すると、そのうちの 1 つはキー用で、もう 1 つは値用です。
キー テーブル
1 -- Price
2 -- Color
値テーブル
1 -- Red
2 -- Blue
3 -- 10 $
4 -- 20$
Product Details テーブルを垂直テーブルとして使用して、製品に必要な数のプロパティを追加しています。
さあ、レコード探しだ!
たとえば、「すべて」の製品詳細列が一致するすべての製品を取得する必要があります。
私は次のデータを持っています
製品表データ
Prod#1 XXX
Prod#2 YYY
商品詳細表データ
1 Prod#1 1 4
2 Prod#1 2 1
行 #1: 値が 20$ の Price キーを持つ製品 1 行 #2: 値が Red の Color キーを持つ製品 1
ここで、次のクエリを実行する必要があります。
1- Get Products with Key "Price" having a price > 10$
2- Get Products with a Key "Price" > 10 AND "Color" is Red
これは、単一のクエリで TSQL で実行できますか?
ありがとう