2016-12-27 16 views
-2

テーブルPAYTBに取引情報があります。テーブルには、共通商人名であるACAUREQ_AUREQ_ENV_M_CMONNMが含まれています。SQLで最も頻繁に発生する順

今、私はこのような出力をしたい:

orders   ACAUREQ_AUREQ_ENV_M_CMONNM  
---------+---------+---------------- 
100    Antique Shop  
30    Airleisure  
23    Books 
12    ....   

どのように私は、ある共通の商人の名を持つすべてのトランザクションのカウントである「注文」欄を構築することができますか?あなたがACAUREQ_AUREQ_ENV_M_CMONNM上のグループに必要

select count(*) as orders, ACAUREQ_AUREQ_ENV_M_CMONNM 
     from PAYTB 
     group by ACAUREQ_AUREQ_ENV_M_CMONNM; 
+3

値の出現についてCOUNTINGについては何もありませんか? – dfundako

答えて

1

とそれぞれの行数、降順でその数によって、その後の順序を見つける:

+0

ビルドされた列で注文が動作しません – Esperento57

+0

@ Esperento57あります。それを試してください – GurV

+1

Order by句は最後に処理されるので、データベースエンジンはその時点でそれを認識しています。あなたは 'select'の前に処理されているので、節を持つことでエイリアスを使うことはできません – GurV

0

あなたがして、グループを使用したいです。

SELECT COUNT(*) orders, 
    ACAUREQ_AUREQ_ENV_M_CMONNM 
FROM PAYTB 
GROUP BY ACAUREQ_AUREQ_ENV_M_CMONNM 
ORDER BY orders desc; 
+0

ちょうど注文を追加する;) – Esperento57

1
SELECT count(*) as orders , ACAUREQ_AUREQ_ENV_M_CMONNM 
FROM PAYTB 
GROUP BY ACAUREQ_AUREQ_ENV_M_CMONNM 
ORDER BY 1 desc; 
0

表現することで、グループ内のカウントを降順表示する数(*)DESC順。

SELECT count(*) as orders , ACAUREQ_AUREQ_ENV_M_CMONNM 
FROM PAYTB 
GROUP BY ACAUREQ_AUREQ_ENV_M_CMONNM 
ORDER BY count(*) desc; 
関連する問題