Tastenputzer: PHP MySQL Abfrage sortieren

Beitrag lesen

Hallo Dennis,

welche MySQL-Version verwendest Du?

ich habe ein Script, das pro Datensatz in Tabelle x, eine Zeile einfügt. Darin habe ich nochmal eine Abfrage von Tabelle y pro abgerufene Zeile aus Tabelle x.

So was macht man nicht. Es gibt Joins

$n1 = 'SELECT year, number FROM x ORDER BY '.$field.' '.$sort;

while($row = mysql_fetch_object($n2)) {

Das tut weh. Sowas macht man nicht. Sowas vermeidet man unter nahezu allen
Umständen. Abfragen in einer Schleife deutet in nahezu allen Fällen auf
anfängerhafte Fehler hin.

$res = mysql_query('SELECT COUNT(id) AS anzahl FROM y WHERE issue='.$row->number.$row->year);

Aber wenn ich jetzt z.B. nach der Anzahl in Tabellee y das Ganze sortieren will, weiß ich nicht weiter.

Gibt es eine andere Möglichkeit als das Ganze erst in einen Array zu speichern und den nach kompletter Abfrage auszugeben?

Wozu? Vergiß PHP! Nimm SQL!
Ich vermute, dass folgende Query das liefert, was Du haben möchtest.

SELECT

COUNT(y.id) AS anzahl,
    x.number,
    x.year
FROM
    y
INNER JOIN
    x
ON
    y.issue = CONCAT(x.number, x.field)
GROUP BY
    x.number,
    x.year
ORDER BY anzahl


>   
> In Abhängigkeit von Deinen (leider unbekannten) Daten könnte auch eine leicht  
> modifizierte Version erforderlich sein. Falls meine Abfrage nicht das gewünschte Ergebnis liefert, so bitte ich Dich darum ein paar Beispieldaten und das daraus sich ergebende Resultat zu posten - mit der Begründung, warum  
> Du dieses Resultat haben möchtest.  
>   
>   
> Freundliche Grüße  
>   
> Vinzenz  
  
Hallo zusammen,  
  
musste mir grad mal wieder meinen Teil denken: So macht man das doch nicht - hehe, und wie macht man das dann? LOL  
  
Ich hätte da eine Idee: Wenn ich wissen möchte, wieviel Daten in einer Abfrage sind, dann nutze ich die mysql\_num\_rows Funktion.  
Die kannst Du einfach unter Deine Abfrage stellen, brauchst da keine Extra Anfrage an die Datenbank für stellen.  
  
Ich hoffe, dass Dir das im Moment weiterhilft  
Liebe Grüße aus dem Ruhr-Gebiet  
Edgar  
  
[Professionelle Internetauftritte](http://www.ruhr-promotion.de) [Kostenloser Homepagetest](http://service.ruhr-promotion.de/homepage-test/index.html)