paul: Mysql - Abfrage sortieren??

hallo,

ich habe eine datenbank mit mehreren spalten (kommen aus checkboxen).
die werte in der jeweiligen spalte können 0 und 1 sein.
ich habe bereits in php für die jeweiligen tabellenzeilen die summen der checkboxen-spalten ermittelt, die auf "0" stehen.
nun würde ich gerne die tabelle nach diesen summen sortieren, d.h. wenn in der tabellenzele 17 die meisten checkboxen auf "0" stehen, soll die dann in meiner ausgabetabelle ganz oben stehen.

eine normale Sql-Abfrage würde ja einfach gehen mit ORDER BY. aber wie kann ich eben nach diesen summen sortieren?

  1. Hi,

    zb.

    mysql> SELECT year, SUM(profit) FROM sales GROUP BY year;
    +------+-------------+
    | year | SUM(profit) |
    +------+-------------+
    | 2000 |        4525 |
    | 2001 |        3010 |
    +------+-------------+

    Tim

    1. danke für die hilfe, aber es ist etwas komplizierter. die tabelle sieht ca. so aus:

      +------+------------+-------+
      | id   | 2003| 2004 | 2005  |
      +------+-----+------+-------+
      | 1    |  0  |  0   |   1   |
      | 2    |  0  |  1   |   1   |
      +------+-----+------+-------+

      ich möchte die anzahl der nullen in einer reihe summieren und nach der summe der anzahl der nullen sortieren...

      Hi,

      zb.

      mysql> SELECT year, SUM(profit) FROM sales GROUP BY year;
      +------+-------------+
      | year | SUM(profit) |
      +------+-------------+
      | 2000 |        4525 |
      | 2001 |        3010 |
      +------+-------------+

      Tim

      1. echo $begrüßung;

        ich möchte die anzahl der nullen in einer reihe summieren und nach der summe der anzahl der nullen sortieren...

        Dafür hast du ein ungünstiges Tabellendesign vorliegen. Gleiche Daten gehören unter-, nicht nebeneinander. Denn dann könntest du die vielfältigen Möglichkeiten des DBMS nutzen, zum Beispiel die angesprochene Gruppierung mit Summenbildung. So bleibt dir nur, in der Abfrage eine berechnete Spalte einzufügen, die dir die Spaltenwerte zusammenrechnet

        SELECT ..., 2003 + 2004 + 2005 AS alias ... ORDER BY alias

        Erweiterst du die Tabelle jedes Jahr um eine weitere Spalte? Dann musst du auch diese Formel jedes Jahr erweitern.

        echo "$verabschiedung $name";

  2. Hi,

    ich habe eine datenbank mit mehreren spalten (kommen aus checkboxen).
    die werte in der jeweiligen spalte können 0 und 1 sein.
    ich habe bereits in php für die jeweiligen tabellenzeilen die summen der checkboxen-spalten ermittelt, die auf "0" stehen.
    nun würde ich gerne die tabelle nach diesen summen sortieren,

    Dann sortiere doch einfach nach der Summe der Spalten.

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    O o ostern ...
    Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.