Rumah  >  Artikel  >  pangkalan data  >  Bagaimana Mengira Peratusan Pekerja yang Mengambil Tinjauan dalam MySQL?

Bagaimana Mengira Peratusan Pekerja yang Mengambil Tinjauan dalam MySQL?

DDD
DDDasal
2024-10-26 16:23:02659semak imbas

How to Calculate the Percentage of Employees Who Took a Survey in MySQL?

Mengira Peratusan dalam MySQL

Apabila bekerja dengan pangkalan data MySQL, anda mungkin menghadapi keperluan untuk mengira peratusan berdasarkan nilai tertentu. Satu senario sedemikian ialah menentukan peratusan ahli dalam kumpulan yang telah mengambil tinjauan.

Pernyataan Masalah

Pertimbangkan jadual pangkalan data MySQL berikut bernama "a_test" dengan empat lajur: "id", "group_name", "pekerja" dan "tinjauan". Matlamatnya adalah untuk mengira peratusan pekerja yang telah mengambil bahagian dalam tinjauan berdasarkan bilangan tinjauan yang diambil.

Penyata SQL yang Disediakan

Pernyataan SQL berikut telah cuba menyelesaikan masalah ini:

<code class="sql">SELECT
  group_name,
  employees,
  surveys,
  COUNT( surveys ) AS test1, 
  ((COUNT( * ) / ( SELECT COUNT( * ) FROM a_test)) * 100 ) AS percentage
FROM
  a_test
GROUP BY
  employees</code>

Penyelesaian Dikaji

Untuk mengira dengan tepat peratusan pekerja yang telah mengambil tinjauan, pernyataan SQL yang disemak berikut disediakan:

<code class="sql">SELECT group_name, employees, surveys, COUNT( surveys ) AS test1, 
        concat(round(( surveys/employees * 100 ),2),'%') AS percentage
FROM a_test
GROUP BY employees</code>

Penjelasan

  • bundarkan peratusan kepada dua tempat perpuluhan.
  • concat menggabungkan peratusan dengan simbol peratusan (' %').

Ini memastikan keputusan dipaparkan sebagai peratusan dengan bilangan tempat perpuluhan yang betul.

Sampel Data dan Output

Menggunakan data sampel berikut dalam jadual "a_test":

<code class="sql">INSERT INTO a_test (id, group_name, employees, surveys) VALUES
(1, 'Awesome Group A', '100', '0'),
(2, 'Awesome Group B', '200', '190'),
(3, 'Awesome Group C', '300', '290');</code>

Pernyataan SQL yang disemak menghasilkan output berikut:

group_name employees surveys percentage
Awesome Group A 100 0 0.00%
Awesome Group B 200 190 95.00%
Awesome Group C 300 290 96.67%

Seperti yang terbukti daripada output, peratusan pekerja yang telah mengambil tinjauan dikira dengan betul. Kumpulan B Awesome mempunyai 95% penyertaan, manakala Kumpulan Awesome C mempunyai 96.67% penyertaan.

Atas ialah kandungan terperinci Bagaimana Mengira Peratusan Pekerja yang Mengambil Tinjauan dalam MySQL?. 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