0

私はこれを持っています:

select ordernr 
from users 
having count(ordernr) = 
( select max(count(ordernr)) 
    from users where ordernr = ordernr 
    group by ordernr ) 
group by ordernr

すべてのユーザーから最も使用されている注文番号 (ordernr) を取得します。

それをABAP SAPシステムに入れる方法は? 私はこれを試しました:

select SINGLE ordernr 
from ZDEVXXX_PROJECT3 INTO ordernrU 
having count( * ) = 
( select max( count( * ) ) 
    from ZDEVXXX_PROJECT3 
    where ordernr = ordernr 
    group by ordernr )

しかし、私はこのエラーが発生します:

"Unknown columnname COUNT("

ABAPで最大とカウントを組み合わせる方法は? 上記の SQL クエリは、Oracle で動作しています。ありがとう!

4

3 に答える 3

1

HAVING 句で使用する場合は、結果セットに COUNT(*) が含まれている必要があります。例については、 http://help.sap.com/abapdocu_751/en/ABENWHERE_LOGEXP_ALL_ANY_SOME.htmを参照してください。

于 2010-06-27T14:31:11.280 に答える
-1

または、ABAP Open SQL を使用できます。特定のDBのSQLへのアクセスを提供し、上記のクエリを実行できます。

于 2010-08-22T11:33:32.890 に答える
-1

リリース 6.1 以降、HAVING 句で集計を使用できます。しかし、あなたの答えは「ありえない」です。集合体は形式のみである必要がありaggr( {[distinct] column | *} ) ます

select count( * )
    into table itab
    from ZDEVXXX_PROJECT3 
    where ordernr = ordernr 
    group by ordernr

次に、プログラムで最大カウントを見つけます。そして、それをHAVING状態で使用するだけです。

于 2010-08-11T02:37:29.567 に答える