Rumah  >  Soal Jawab  >  teks badan

Deduplikasi Mysql, mengapa hanya beberapa ratus atau berpuluh-puluh data pendua boleh dialih keluar setiap kali, sedangkan terdapat ratusan ribu data pendua?

Keperluan: Padamkan item dengan primaryid dan nama ubat yang sama dalam DRUG, dan simpan baris terkecil drug_seq

Soalan: Mysql menggunakan kaedah ini untuk mengalih keluar pendua, mengapa ia hanya boleh mengalih keluar ratusan atau berdozen data pendua setiap kali, seperti memerah Ubat gigi? Begitu juga, setiap kali saya laksanakan, saya akan mengeluarkan lebih sedikit duplikasi yang jelas terdapat ratusan ribu data pendua saya telah mencuba beberapa kaedah, tetapi deduplikasi masih tidak lengkap PADAM DARI `drug2022` WHERE drug_seq IN (

SELECT drug_seq FROM (

SELECT drug_seq FROM `drug2022` WHERE (primaryid,drugname) IN (SELECT primaryid,drugname FROM `drug2022`drugname) ; 1)

DAN

drug_seq TIDAK MASUK (PILIH MIN(drug_seq) DARI KUMPULAN `drug2022` OLEH primaryid,nama dadah MEMPUNYAI COUNT(*) > 1))AS a1);

PADAMKAN

DARI `drug2022`

WHERE drug_seq NOT IN (

) (PILIH t1.min_drug_seq

) DARI (PILIH MIN(drug_seq) SEBAGAI min_drug_seq20DARI2`nama dadah t; 1) t1))

DAN (nama dadah , primaryid) DALAM

(PILIH t2.nama dadah, t2.primaryid

) DARI (PILIH nama ubat, primaryid DARI `drug2022` KUMPULAN MENGIKUT nama dadah, primaryid MEMPUNYAI COUNT(1) > 1) t2);

#Kaedah Ketiga:

PADAM t1

DARI `drug2022` t1,

`drug2022` t2

WHERE tid t1.primary

nama = t2. nama dadah

DAN t1.drug_seq <t2.drug_seq;

#Kaedah 4

DELETE

DARI `drug2022`

(*q_dROM_PILIH dadah KUMPULAN 2022` OLEH primaryid, nama ubat) t2);

P粉029305743P粉029305743733 hari yang lalu743

membalas semua(0)saya akan balas

Tiada jawapan
  • Batalbalas