私は以下のようなテーブルを持っています。私は重複していないIDのカウントをしようとしています。私は別個のカウントを意味しません。区別できるカウントは7(a、b、c、d、e、f、g)の結果を返します。私はそれが4(a、c、d、f)のカウントを返すようにしたい。これらは、複数のタイプコードを持たないIDです。私は次のクエリを試してみましたが、カウントが0になっています(結果は数百万になるはずです)。重複しない行数をカウントするためのSQLクエリの作成を助けます(別個のカウントではありません)
select ID, count (ID) as number
from table
group by ID
having count (ID) = 1
Select count (distinct ID)
From table
Having count (ID) = 1
ID|type code
a|111
b|222
b|333
c|444
d|222
e|111
e|333
e|555
f|444
g|333
g|444
@scaisEdgeのおかげで!あなたが提供した最初のクエリは、上記の質問で私が探しているものを正確に教えてくれました。これで、私の指導者は、1つのタイプコード内にIDが何回あるかを数えて表示することをさらに進めることを要求していることが分かりました。 1 222 | | 1 444 | 111を数える|たとえば、私たちは
型コードを見てみたい2
444のシングルタイプコード持っているIDの2件のインスタンスがあります(Cは、F) 111(a)と222(d)という1つのタイプコードを持つIDのインスタンスが1つ存在します。私は(のようなクエリを変更しようとしましたが、回数を持つCONT_ID によって imdmadmp.contequiv グループから( 選択CONT_IDからクエリを実行している
SELECT COUNT(admin_sys_tp_cd)数 などのエラーに出くわすされていますadmin_sys_tp_cd
COUNT(*)とCOUNT(ID)の間で異なるとは何ですか?あなたが私に頼む気にならないかどうか説明できますか? – AVK
ほとんど同じですが、IDがnullの場合にのみカウントされません。 – Kostya
@AVKNaiduこのリンクは、https://www.percona.com/blog/2007/04/10/count-vs-countcol/ ..本質的にcount(*)の条件を満たす行の数をカウントするのに役立ちます(ID)は、条件を満たすid(nullでない)の行をmberに数えます。 – scaisEdge