• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

MySql generiertes "Feld" zum Integer machen

TecEye

New member
Hallo Leute,
also ich generiere in einer etwas umfangreicheren SELECT Abfrage ein neues Feld "weight"
Code:
SELECT f.*,
...
IF(f.form_y = '".$pre_year."' AND f.form_q = '".$pre_qtr."', '0' , ((100 / ".$sum_value.") * f.value)) AS `weight`, 
...
FROM sys_filings f ... WHERE.... ORDER BY weight ASC

heraus kommt eine Prozentangabe, nach der ich gerne sortieren möchte, allerdings wird wie folgt sortiert ...5,4,3,2,10,1,0.5,0.3...
Wie bekomm ich dieses Feld was ja onthefly erstellt wurde zu einem integer-feld, damit es richtig sortiert?
 
CAST() sollte funktionieren. Aber ich verstehe sowieso nicht, warum das überhaupt als String behandelt wird.

ABER du könntest auch nach value sortieren, da ja der Rest der Berechnung für alle Zeilen gleich ist. (Es könnte sogar sein, dass es performanter ist, diese Berechnung nicht in SQL, sondern in PHP zu machen).
 
Zurück
Oben