User since
2004-12-17
18
Artikel
BenutzerIn
Hallo @ All,
ich suche die Syntax für nen SQL-String welcher mir aus dem Datentyp Varchar irgend eine beliebige Zahl macht. Am besten wäre ein Währungstyp z.b. decimal(5,2)
Die Query sieht so aus...
SELECT DISTINCT MIN(Preis) FROM tbl_test WHERE ...
Preis = Varchar (hier steht IMMER ein numerischer Wert drin, eigentlich auch immer OHNE Nachkomma Stelle) dieser sollte als Zahl formatiert werden, da ich ein falsches Ergebnis bekomme (99 > 109 bei varchar)
Hoffe mir kann jemand helfen.
P.S. Den Datentyp in der Tabelle kann ich leider nicht mehr abändern.
Gruß
User since
2003-08-04
14371
Artikel
ModeratorIn
Probier mal:[sql]SELECT MIN(CAST(Preis AS INT)) FROM table WHERE ... ;[/sql]
Edit: CAST() gibt es glaube ich erst ab MySQL 4.0.2\n\n
<!--EDIT|renee|1112608686-->
User since
2004-12-17
18
Artikel
BenutzerIn
Hallo renee,
bekomm leider syntax error:
... right syntax to use near 'int)) from ...
Verwende MySQL 4.0.22
User since
2003-08-04
14371
Artikel
ModeratorIn
Die Lösung ist noch einfacher:[sql]SELECT MIN(0 + Preis) FROM tbl_test WHERE ... ;[/sql]
User since
2003-08-04
14371
Artikel
ModeratorIn
Bzw. der Typ INT hätte wohl SIGNED bzw. UNSIGNED sein müssen, aber das andere funktioniert auch bei älteren MySQL-Versionen (auf 4.0.18 getestet)...
User since
2004-12-17
18
Artikel
BenutzerIn
Super, Danke Dir. Funzt jetzt einwandfrei :)