テーブルには、ITEM、SUB_ITEM、DATE_CREATEDという3つの列があります。Oracle:行の最初の値でグループ化する方法は?
ITEM - item id (string)
SUB_ITEM - item id (int)
DATE_CREATE - date the SUB_ITEM was created (date)
シナリオ:
- 3別の項目の(AAA1、AAB2、ABB3)は、これらの項目のすべての3は、複数のサブアイテムを持っている
- があります。
:select * from table group by ITEM, SUB_ITEM, DATE_CREATED
- 各項目は、私のような何かをしようとしていますそれらのそれぞれ(例えば、アイテムのすべての3を持っているSUB_ITEM = 101010)
で同じであるサブアイテムを持っています
どのようにして1行しか表示させませんか?私はそれがAAA1またはAAB2またはABB3を選択するかどうか気にしない、私はちょうど1を選択し、SUB_ITEMごとに1行を表示するので、残りの部分を削除したいが、まだ少なくとも1つの親アイテムを表示します。
編集:
は、上記の質問に答えるためにmathguyに感謝します。
質問2: サブアイテムに加えて、アイテムの最初の2文字でグループ化することはできますか?したがって、1行を返す代わりに2行を返します.AAA1とAAB2は1行にカスケードし、ABB3は2行目になります。なぜなら、 'AA'と 'AB'が異なるからです。
編集2:2
サンプルの表データとそれに基づいて予想される出力を提供できますか? – GurV