mssql convert varchar to float
Ich habe einen Feldwert productlength von 0.123. Dieser stammt aus einer Ansicht und hat den Datentyp varchar.
Ich muss ihn in einen Float- oder numerischen Wert umwandeln, um mathematische Vergleiche durchführen zu können.
konvertieren(float,produktlaenge) und cast(productlength as float) funktionieren beide nicht.
Fehler "varchar kann nicht in float konvertiert werden" oder so ähnlich.
Nach dem, was ich gelesen habe, kann varchar einfach nicht in eine numerische Zeichenfolge konvertiert werden?
Gibt es irgendwelche cleveren Möglichkeiten, dies zu umgehen?
9
3
Sie können varchars in Floats konvertieren, und zwar auf die von Ihnen beschriebene Weise. Ihr varchar darf kein numerischer Wert sein. Es muss etwas anderes enthalten sein. Sie können IsNumeric verwenden, um dies zu testen. Siehe dies:
Verwenden Sie
Siehe https://raresql.com/2013/04/26/sql-server-how-to-convert-varchar-to-float/
wird folgende Werte zurückgeben
Die folgende Abfrage wird jedoch nicht funktionieren
da @INPUT_1 tatsächlich varchar enthält.
Ihre Ausgabespalte muss also ein varchar enthalten.