SELECT
layerid,
sum(case when changeMold='U' then 1 else 0 end) changeMold_U,
sum(case when changeMold='A' then 1 else 0 end) changeMold_A
FROM table_name
GROUP BY layerid;
Jika anda ingin mengira fail yang begitu besar. Adalah lebih baik untuk menyemak kesemuanya dan kemudian memproses tatasusunan dengan lebih mudah (sql agak lemah)
pilih layerid,changeMold,count(*) sebagai num dari JADUAL di mana layerid masuk (pilih layerid daripada kumpulan JADUAL mengikut layerid) kumpulan mengikut changeMold Prestasi SQL ini sangat lemah
Permudahkan, saya tidak tahu sama ada ini boleh.
PILIH layerid, ChangeMold, COUNT(ChangeMold) DARI table_name
KUMPULAN MENGIKUT layerid,ChangeMold
pilih kiraan(*),layid,changeMold daripada kumpulan tbl oleh layid,changeMold
Jika anda ingin mengira fail yang begitu besar. Adalah lebih baik untuk menyemak kesemuanya dan kemudian memproses tatasusunan dengan lebih mudah (sql agak lemah)
pilih layerid,changeMold,count(*) sebagai num dari JADUAL di mana layerid masuk (pilih layerid daripada kumpulan JADUAL mengikut layerid) kumpulan mengikut changeMold Prestasi SQL ini sangat lemah