Spalte einer Tabelle vom Datentyp varchar(max) in int konvertieren

SA-Luebeck

Neuer Benutzer
Beiträge
4
Hallo an Alle,

ich habe eine Tabelle "ArtikelBeschreibung" mit folgenden Spalten:

d8e873-1593450292.png
Ich will die Spalte "cBeschreibung" als int ausgeben, bekomme aber die folgende Fehlermeldung:

Meldung 245, Ebene 16, Status 1, Zeile 20 Fehler beim Konvertieren des varchar-Werts "Muller Bogen-04240418900-00" in den int-Datentyp.

Meine Abfrage:

SELECT (case when isnumeric(Description) = 1 then cast (Description as int) end)
FROM ArtikelBeschreibung

So wie ich das verstehe, hängt es damit zusammen, dass varchar(max) eine variable Länge besitzt.

Gibt es hierfür einen anderen Lösungsweg?
 
Werbung:
Werbung:
isnumeric() liefert dir auch für Komma und ich glaube auch für . ein True zurück. Integer kann aber nur ganze Zahlen aufnehmen, vermutlich scheitert es dort irgendwo.

Besser man speichert Daten gleich im richtigen Format dann gibt es genau solche Probleme nicht. Sieht stark nach CMS oder sowas aus.
 
Zurück
Oben