Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk Mengira Peratusan Penyertaan Tinjauan Pekerja dalam MySQL dengan Subqueries?

Bagaimana untuk Mengira Peratusan Penyertaan Tinjauan Pekerja dalam MySQL dengan Subqueries?

DDD
DDDasal
2024-10-27 10:59:02793semak imbas

How to Calculate Employee Survey Participation Percentage in MySQL with Subqueries?

Mengira Peratusan Penyertaan Tinjauan Pekerja dalam MySQL

Dalam senario di mana pangkalan data mengandungi maklumat tentang pekerja dan penyertaan tinjauan mereka, mengira peratusan pekerja yang telah melengkapkan tinjauan adalah penting untuk menilai kadar tindak balas. Untuk mencapai ini dalam MySQL, pertanyaan yang dibuat dengan teliti diperlukan.

Pertanyaan yang disediakan cuba mengira peratusan menggunakan operasi bahagi dan pendaraban. Walau bagaimanapun, ia gagal kerana pengiraan berdasarkan bilangan baris dalam jadual dan bukannya pekerja yang diwakili dalam lajur 'pekerja'.

Pertanyaan yang diperbetulkan memperkenalkan pelarasan berikut:

  • Pengiraan peratusan kini merupakan gabungan dua subkueri:

    • ujian1 mengira bilangan tinjauan yang diambil oleh setiap pekerja.
    • Subkueri luar mengira jumlah bilangan pekerja.
  • Peratusan kemudiannya dikira dengan membahagikan ujian1 dengan jumlah bilangan pekerja dan mendarabkan hasilnya dengan 100.
<code class="sql">SELECT group_name, employees, surveys, COUNT( surveys ) AS test1, 
concat(round(( test1/employees * 100 ),2),'%') AS percentage
FROM a_test
GROUP BY employees</code>

Ini pertanyaan yang dikemas kini dengan tepat mengira peratusan pekerja yang telah mengambil bahagian dalam tinjauan, seperti yang ditunjukkan dalam demo yang dipautkan dalam jawapan. Contohnya, Kumpulan A Hebat akan mempunyai peratusan sebanyak 0%, manakala Kumpulan Hebat B akan mempunyai peratusan sebanyak 95%.

Atas ialah kandungan terperinci Bagaimana untuk Mengira Peratusan Penyertaan Tinjauan Pekerja dalam MySQL dengan Subqueries?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn