Penjumlahan Baris Berbeza dalam MySQL
Pertanyaan ini bertujuan untuk mengira statistik tentang pautan: klik unik, penukaran dan jumlah nilai penukaran. Klausa DISTINCT memastikan setiap baris dikira sekali sahaja dalam kumpulan. Walau bagaimanapun, cabarannya terletak pada menjumlahkan nilai penukaran dengan betul, kerana operasi kumpulan mengikut mungkin mengira pendua.
Penyelesaian melibatkan pengagregatan nilai penukaran dengan betul. Memandangkan setiap ID penukaran yang berbeza sepadan dengan tepat satu ID pautan, jumlah nilai penukaran perlu dilaraskan.
Pertanyaan yang diubah suai adalah seperti berikut:
SELECT links.id, count(DISTINCT stats.id) AS clicks, count(DISTINCT conversions.id) AS conversions, SUM(conversions.value) * COUNT(DISTINCT conversions.id) / COUNT(*) AS conversion_value FROM links LEFT OUTER JOIN stats ON links.id = stats.parent_id LEFT OUTER JOIN conversions ON links.id = conversions.link_id GROUP BY links.id ORDER BY links.created DESC;
Pelarasan ini memastikan penukaran nilai dijumlahkan dengan betul untuk setiap baris yang berbeza. Keputusan akhir memberikan statistik yang diingini untuk setiap pautan.
Atas ialah kandungan terperinci Bagaimana untuk Mengira Penjumlahan Baris Berbeza dalam MySQL untuk Statistik Pautan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!