テーブルprial_tb、列t_number、およびrundateを持つテーブルTrial_tbがあります。 サンプル値:テーブルから一意のレコードを取得し、2つのキー列に基づいてすべての重複を避けます。
p_id|t_number|rundate
=====================
111|333 |1/7/2016||
111|333 |1/1/2016||
222|888 |1/8/2016||
222|444 |1/2/2016||
666|888 |1/6/2016||
555|777 |1/5/2016||
PIDとtナンバーは、キー列です。私は結果がpidとtnumberの組み合わせが複製されているレコードを持ってはならないようにフェッチ値を必要とします。たとえば、111 | 333の重複があり、したがって有効ではありません。クエリは、最初の2つのレコード以外をすべてフェッチする必要があります。
私は以下のスクリプトを書いたが、最後のレコードだけを取り出す。
select
p_id,t_number
from
trialtb
group by
p_id,t_number
having
count(*) = 1
またはあなたも実行日が必要です
select
p_id,t_number,max(rundate)
from
trialtb
group by
p_id,t_number
having
count(*) = 1
あなたが唯一最大または最小を使用して1つの結果でアイテムを探していると見て::(
select rundate,p_id,t_number from
(
select rundate,p_id,t_number,
count(p_id) over (partition by p_id) PCnt,
count(t_number) over (partition by t_number) TCnt
from trialtb
)a
where a.PCnt=1 and a.TCnt=1
はい、同様にrundateが必要です。 – BenThomas
私はそれを答えに加えました – gordatron
ありがとう。これは動作します – BenThomas