Einzelnen Beitrag anzeigen

EricMeyer

Registriert seit: 31. Mai 2012
Ort: Berlin
23 Beiträge
 
#1

Temporary table order problem

  Alt 20. Jul 2017, 18:49
Datenbank: Mysql • Version: ? • Zugriff über: ?
Hi,
Ich habe folgendes Problem

Ich habe eine Uniquerry, ein DatasetProvider, ein Clientdataset, eine Datasouce und dann ein grid von defexpress, als auch einen report gekoppelt über frxdbdataset.
Also erstmal einen ganz normalen Aufbau. Ich greife jetzt auf eine mysql DB.
Im SQL führe ich folgendes aus
Ich erzeuge eine temporäre Tabelle (Temporary table) und Sortiere sie sagen wir mal nach Punkten, dazu führe ich ein @count := @count +1 as Ranking aus.
Ich habe jetzt also eine Tabelle mit einem Ranking und den Punkten, außerdem den Namen der Leute.
Jetzt rufe ich die Tabelle mit einem select auf und sortiere sie dort neu nach dem Alphabet. Ziel ist also eine Tabelle zu haben, die nach Namen sortiert ist, aber das Ranking drin hat.

Im Delphi wird aber das zweite sortieren nach den Namen ignoriert, sprich in meinem Grid, also auch in meinem Report wird nur das erste Sortieren durchgeführt, also das nach den Punkten. Das seltsame daran, ich habe einen dbMonitor und eine MySqlWorkbench. Mit dem dbMonitor sehe ich, welcher mysql-code ausgeführt wird. Kopiere ich den Code und führe diesen in der Workbench aus, ist das Ergebnis, wie ich es haben möchte.
Nehme ich den order befehl aus der ersten (temporären) Tabelle raus, sortiert er auch in der zweiten Tabelle, wie ich es möchte.

Hat jemand eine Idee für das Problem oder, wie ich es umgehen kann?
  Mit Zitat antworten Zitat