stefan4711 3 Geschrieben 12. Juni 2020 Melden Teilen Geschrieben 12. Juni 2020 Hallo liebe SQLler, ich habe ein ziemliches Problem, wir haben einen Datenbankclient der beim Import von XLS Listen in bestimmten Fällen führende Nullen verschluckt, dieses darf aber nicht sein, dieses Feld muss bei uns immer 7 Stellen haben. Es handelt sich um ein varchar (255) Feld. Wie müsste mein Update Befehl in meinem Fall lauten, wenn das überhaupt geht? Use Archiv UPDATE M_Tabelle SET Ob_X2 [Führende Null anfügen] WHERE Ob_ID IN ( SELECT Ob_ID FROM M_Tabelle INNER JOIN M_Bestaende ON M_Tabelle.B_ID = M_Bestaende.B_ID WHERE B_intAbk = 'xyz' and [ob_x2 Stellen kleiner als 6] ) Wäre cool wenn das ginge Danke i.V. und schönes WE Zitieren Link zu diesem Kommentar
NilsK 2.933 Geschrieben 12. Juni 2020 Melden Teilen Geschrieben 12. Juni 2020 (bearbeitet) Moin, vermutlich müsste man an dem importierenden Client ansetzen, dass er seinerseits die Werte als String und nicht als Zahl ansieht, bevor er sie weitergibt. Dein Update könnte einen String von sieben Nullen vorn an den Wert anhängen und von dem, was dabei rauskommt, nur die rechten sieben Stellen nehmen. Das ist ein üblicher Weg, führende Zeichen in variabler, aber passender Anzahl zu ergänzen. Je nachdem, wie viele Reihen die Tabelle hat, macht man das nur, wenn der aktuelle Wert zu kurz ist oder einfach immer. "kleiner als 6" scheint mir übrigens als Filter unpassend zu sein, wenn es sieben Stellen sein müssen. Gruß, Nils bearbeitet 12. Juni 2020 von NilsK Zitieren Link zu diesem Kommentar
stefan4711 3 Geschrieben 12. Juni 2020 Autor Melden Teilen Geschrieben 12. Juni 2020 OK, wenn ich das richtig verstanden habe ist das per SQL eher nicht vernünftig zu realisieren, dann werde ich mal den Hersteller des ImportTools kontaktieren. Danke dir noch mal und schönes WE Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 12. Juni 2020 Melden Teilen Geschrieben 12. Juni 2020 (bearbeitet) In Excel kann man führende Nullen auch per Formatierung ergänzen. Der eigentlich eingegebene Zellinhalt ist dann die Zahl ohne führende Nullen. Du könntest - quick & dirty - in einer Nachbarzelle eine entsprechende Formel hinterlegen, die die Zahl um die nötigen Nullen ergänzt und als "Text" formatiert ausgibt. ... so als Notlösung, bis der Hersteller des Import-Tools eine korrigierte Version liefert. bearbeitet 12. Juni 2020 von BOfH_666 Zitieren Link zu diesem Kommentar
marowi 0 Geschrieben 13. Juni 2020 Melden Teilen Geschrieben 13. Juni 2020 geht mit einer einzigen Code-Zeile, siehe https://stackoverflow.com/questions/9520661/formatting-numbers-by-padding-with-leading-zeros-in-sql-server SELECT REPLICATE('0',6-LEN(EmployeeId)) + EmployeeId Zitieren Link zu diesem Kommentar
stefan4711 3 Geschrieben 14. Juni 2020 Autor Melden Teilen Geschrieben 14. Juni 2020 Das ist es ja gerade BofH, die Werte in der Exceltabelle liegen ja in der korrekten Form vor, werden lediglich beim Importverschluckt lg und schönen Sonntag Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 14. Juni 2020 Melden Teilen Geschrieben 14. Juni 2020 (bearbeitet) vor 28 Minuten schrieb stefan4711: Das ist es ja gerade BofH, die Werte in der Exceltabelle liegen ja in der korrekten Form vor, werden lediglich beim Importverschluckt Hmmm ... darf ich das anzweifeln? Wie ich geschrieben hatte, ist es möglich, dass die Werte zwar so in der Tabelle korrekt angezeigt werden, aber eigentlich etwas anderes in der Zelle enthalten ist. Man stellt das einfach fest, in dem man in die Bearbeitungsleiste klickt. Wenn eine Zelle keinen String-Wert enthält, der auch führende Nullen haben kann, wird Excel führende Nullen vor Zahlen beim Eingeben (oder Einlesen oder Importieren) immer entfernen. Sollten die Werte in Deiner Excel-Tabelle tatsächlich als Strings mit führenden Nullen vorliegen, dann hat der Hersteller des Import-Tools aber wirklich einen Bock geschossen, denke ich. bearbeitet 14. Juni 2020 von BOfH_666 Zitieren Link zu diesem Kommentar
NilsK 2.933 Geschrieben 14. Juni 2020 Melden Teilen Geschrieben 14. Juni 2020 Moin, vor 4 Stunden schrieb BOfH_666: Hmmm ... darf ich das anzweifeln? darfst du, ist ja ein freies Land hier. Könnte durchaus sein, wie du es vermutest. Es kann aber auch noch komplizierter sein, denn wie - in dem Fall - ich oben schon anmerkte, kann es ja auch sein, dass die Importfunktion des Clients nicht ordentlich arbeitet und "manchmal" die Strings als Zahlen weitergibt. Gruß, Nils Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 14. Juni 2020 Melden Teilen Geschrieben 14. Juni 2020 vor 2 Stunden schrieb NilsK: ... "manchmal" die Strings als Zahlen weitergibt. Das meinte ich, mit meiner letzten Bemerkung. ... dann bin ich mal gespannt, wie das weitergeht ... is ja manchmal wie ein Krimi hier ... Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.