Prozentsätze in MySQL berechnen
Bei der Arbeit mit einer MySQL-Datenbank müssen Sie möglicherweise Prozentsätze basierend auf bestimmten Werten berechnen. Ein solches Szenario ist die Bestimmung des Prozentsatzes der Mitglieder innerhalb einer Gruppe, die an einer Umfrage teilgenommen haben.
Problemstellung
Betrachten Sie die folgende MySQL-Datenbanktabelle mit dem Namen „a_test“ mit vier Spalten: „id“, „group_name“, „employees“ und „surveys“. Ziel ist es, den Prozentsatz der Mitarbeiter zu berechnen, die an der Umfrage teilgenommen haben, basierend auf der Anzahl der durchgeführten Umfragen.
Zur Verfügung gestellte SQL-Anweisung
Die folgende SQL-Anweisung wurde erstellt hat versucht, dieses Problem zu lösen:
<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>
Überarbeitete Lösung
Um den Prozentsatz der Mitarbeiter, die an der Umfrage teilgenommen haben, genau zu berechnen, wird die folgende überarbeitete SQL-Anweisung bereitgestellt:
<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>
Erklärung
Dadurch wird sichergestellt, dass das Ergebnis als Prozentsatz mit der richtigen Anzahl an Dezimalstellen angezeigt wird.
Beispieldaten und Ausgabe
Unter Verwendung der folgenden Beispieldaten in der Tabelle „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>
Die überarbeitete SQL-Anweisung erzeugt die folgende Ausgabe:
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% |
Wie aus der Ausgabe ersichtlich, der Prozentsatz der Mitarbeiter, die an der Umfrage teilgenommen haben, wird korrekt berechnet. Awesome Group B hat eine Beteiligung von 95 %, während Awesome Group C eine Beteiligung von 96,67 % hat.
Das obige ist der detaillierte Inhalt vonWie berechnet man den Prozentsatz der Mitarbeiter, die an einer Umfrage in MySQL teilgenommen haben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!