Iが列を持つテーブルの従業員(state_cd、EMP_ID、EMP_NAME、ai_cd)がどのようにai_cd対応する列ランダム3つの値と異なる列の値を表示
から3つの異なる値でdisticnt state_cdを表示することができた答えは
なければなりませんstate_cd ai_cd
------- --------
TX 1
2
5
CA 9
10
11
Iが列を持つテーブルの従業員(state_cd、EMP_ID、EMP_NAME、ai_cd)がどのようにai_cd対応する列ランダム3つの値と異なる列の値を表示
から3つの異なる値でdisticnt state_cdを表示することができた答えは
なければなりませんstate_cd ai_cd
------- --------
TX 1
2
5
CA 9
10
11
通常、このタイプの操作はアプリケーションで行うのが適切です。しかし、あなたが本当にしたい場合は、クエリでそれを行うことができます。
select (case when row_number() over (partition by state_cd order by ai_cd) = 1
then state_cd
end) as state_cd,
ai_cd
from employee e
order by e.state_cd, e.ai_cd;
SQLの結果セットが順序付けられていないのでorder by
は、非常に重要です。あなたの結果は意味をなさないために注文する必要があります。
だけのグループと、その後数(個別column_name_)
select state_id from (select state_id,COUNT(DISTINCT ai_cd) as cnt from employee group by state_id) where cnt==3
はゴードン・リノフ@ありがとうを使用してカウント – Chris