次の文を返します。この:ネストされたSQL/DELETE文
select rowid,name,compound,COUNT(*) from qvalues where rowid in (select rowid from batchinfo where instrument='tf1')
group by rowid,name,compound
having COUNT(*)>1
rowid name compound (No column name)
19300 QC1 ETG 2
20379 QC4 ETS 2
20686 QC2 ETG 2
19402 QC1 ETG 2
23605 QC1 ETG 2
21705 QC3 ETS 2
23678 QC1 ETG 2
18480 QC2 ETG 2
..... ...... .....
私はqvaluesと呼ばれる別のテーブルを持っています:私は何をする必要があるか
rid name compound rt response finalConc qvalue rowid
229263 QC3 Hydromorphone 0.69 6228.00 82.53 98 4695
229264 QC3 Morphine 0.51 3168.00 119.89 99 4695
229265 QC3 Oxymorphone 0.57 2472.00 83.89 99 4695
229266 QC3 Benzoylecgonine 2.17 20439.25 85.99 95 4695
229267 QC3 Codeine 1.34 4829.00 82.85 96 4695
229268 QC3 Hydrocodone 1.58 12416.00 84.99 94 4695
229269 QC3 Oxycodone 1.47 5430.00 78.44 94 4695
229270 QC3 Buprenorphine 2.54 366.13 10.41 98 4695
229271 QC3 Mepbrobamate 2.50 1330.34 95.56 92 4695
229272 QC3 Methadone 2.68 85897.27 86.77 92 4695
は、最初のセットからROWID、NAME、化合物の組み合わせを取り、第二セットでの最初のオカレンスだけを保持しています。私は化合物からROWID、NAME、COMPOUNDの組み合わせを持つ他のすべての行を削除する必要があります。 RIDが最も小さいところでこの組み合わせを維持する必要があります。
私は何も
これまでに書いたコードを投稿してください。人々は一般的にあなたのためのコードを書くのが好きではありません。それはそのままで、これは仕事の説明であり、質問ではありません。 –
私はあなたがこの質問を何度も聞いているかもしれないと思います(http://stackoverflow.com/questions/4434118/select-statement-to-find-duplicates-on-certain-fields)。その質問からの私の答えをDELETEステートメントで使って、あなたの解決策を得ました。私たちはおそらくこれを閉じるべきです... –