件数でグループ化されたデータを扱っています。 count > 2
の各レコードは個々のレコードに吹き飛ばす必要があり、そのレベルで別のデータセットと比較する必要があります。GROUP BYを逆転/吹き飛ばします
データは、この(。。それは、これは、顧客がそれを送ることができる唯一の方法である。この形式でスタックしている)のようになります。
OwnerNumber ItemCode ItemNumber CountOfItems
1234 Item1 Item1-001 3
1234 Item1 Item1-002 1
1234 Item1 Item1-003 2
1234 Item2 Item2-001 1
そして、私はこのような形式のデータを必要とする(動的にするためにハードコーディングなしCountOfItemsの値):
OwnerNumber ItemCode ItemNumber
1234 Item1 Item1-001
1234 Item1 Item1-001
1234 Item1 Item1-001
1234 Item1 Item1-002
1234 Item1 Item1-003
1234 Item1 Item1-003
1234 Item2 Item2-001
私はこれを行うにはきれいな方法(または任意の方法のまわりで私の頭をラップすることはできませんいくつかの理由)。
ありがとうございます。いくつかの小さなニットピッキング:特に、テーブルの順序が変更される可能性がある場合は、常にどの列がSELECTされているかを指定するのが最善です。同じ理由がCTE列の定義にも当てはまります。 –
真実です、私は同意します。私はそれを編集した。しかし、なぜCTEの定義列について気にしていますか?それらは 'SELECT'節で私が選択した順序から間接的に定義されますか? – ANisus
パーフェクト!ありがとうございました!私は再帰的なCTEについて読むことを覚えていますが、まだ使用していません。私はちょうど1つを使用する適切な時がどのようにわからなかったと思います。 –