Zum Inhalt springen

Konkatenierung zweier TEXT Felder


Hexekel

Empfohlene Beiträge

Hallo alle,

ich benötige Hilfe.

Ziel ist es den Text aus zwei Datenfeldern in ein drittes Datenfeld zusammenzufassen.

Unter Oracle funktioniert es mit der Funktion concat

update Datentabelle_x set Feld_Text3 = concat(Feld_Text1,Feld_Text2) ;

Wie funktioniert es unter MSSQL 2005?

Versucht habe ich bisher:

update Datentabelle_x set Feld_Text3 =

cast (Feld_Text1 as text) + cast (Feld_Text2 as text);

update Datentabelle_x set Feld_Text3 =

cast (Feld_Text1 as text) || cast (Feld_Text2 as text);

Alles ohne Erfolg.

Vielen Dank für eure Hilfe.

Kel

Link zu diesem Kommentar
Auf anderen Seiten teilen

es gab vor kurzem erst einen ähnlichen thread wie diesen.

verwende CAST (FELD AS [N]VARCHAR(MAX)).

s'Amstel

Das

update Datentabelle set Datenfeld3 = cast ((Datenfeld1 as [N]VARCHAR(MAX)) + cast ((Datenfeld2 as [N]VARCHAR(MAX));

ergibt das

Meldung 156, Ebene 15, Status 1, Zeile 14

Falsche Syntax in der Nähe des 'as'-Schlüsselwortes.

Was ist da falsch? Und was hat es mit der [N] auf sich? Was muss ich da einsetzen?

Danke

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 Monat später...
Probiers mit:

update Datentabelle set Datenfeld3 = cast(Datenfeld1 as NVARCHAR) + cast (Datenfeld2 as NVARCHAR);

Muss funktionieren

Und hier eine kleine Lektüre für die Weihnachtstage :)

Gruß

So, ein neues Problem mit exakt diesem Befehl: Der Inhalt der Datenfelder1 und 2 wird abgeschnitten. Woran kann das liegen?

ohje... ich weiß es wohl...länge angeben...

nvarchar [ ( n | max ) ]

Unicode-Zeichendaten variabler Länge. n kann ein Wert zwischen 1 und 4.000 sein. max gibt an, dass die maximale Speichergröße 2^31-1 Bytes beträgt. Die Speichergröße in Bytes ist doppelt so groß wie die Anzahl eingegebener Zeichen + 2 Bytes. Die eingegebenen Daten können 0 Zeichen lang sein. Die ISO-Synonyme für nvarchar sind national char varying und national character varying.

Bearbeitet von Hexekel
Link zu diesem Kommentar
Auf anderen Seiten teilen

Das der Wert, welchen du gerne in die Zelle schreiben möchtest, größer ist, als die Spalte deklariert ist.

Also z.B.: Spalte(meinetwegen Datenfeld1) ist nvarchar(15). Jetzt kommt der update und der neue Wert der Zelle ist aber 20 Zeichen groß. Nun werden also die letzten 5 Zeichen abgeschnitten.

Wie kannste das beheben... zum Beispiel Spalte erweitern!

Gruß

Schmarrer

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...