Mailinglisten-Archive |
Thomas Hausheer wrote:
> Hallo
>
> in einem Umfrage Auswertungstool schreibe ich die einzelnen Fragebögen in
> eine 290 Felder Tabelle. Die Felder sind als tinyint definiert, da sie nur
> die Werte 0 und 1 enthalten können (angeklickt oder nicht).
>
> Bei der Auswertung möchte ich jedoch die Summe der jeweiligen Feldinhalte
> ausgeben. Gibt es eine andere Möglichkeit als 290 Mal die Felder speziell im
> SQL Befehl anzugeben? Hoffe, da die Felder nicht durchnummeriert sind und
> ich mir ein Haufen Tipp-Arbeit ersparen möchte.
>
> z.b. SELECT SUM(feld1), SUM (feld2).......SUM(feld290)
> wie mache ich das besser?
die Struktur deiner DB ist falsch!
Tabelle Fragebeogen
(id, name, ...)
Tabelle Fragen
(id, fragebogen_id, frage, ...)
dann könntest du ganz einfach:
SELECT SUM(feld) WHERE fragebogen_id = x
oder mittels php:
SELECT * FROM tabelle
...
$summe = 0;
while ( $row = mysql_fetch_ ... )
{
$summe += array_sum($row);
}
--
Sebastian Mendel (www.sebastianmendel.de)
*www.warzonez.de* | www.tekkno4u.de | www.nofetish.com
php::bar PHP Wiki - Listenarchive