Lassen Sie uns sagen, dass wir in einem table
folgende Werte auf Column
als String
gespeichert: ‚‘Ersetze das erste Vorkommen von '.' in SQL-String
Select ValuesT from TableT;
ValuesT
-9.827.08
-9.657.40
-80.000.00
-8.700.00
-8.542.43
-8.403.00
Wie durch nichts ersetzt werden kann nur das erste Vorkommen von (Punkt) von der Schnur?
Ex: für -9.827.08
sollte -9827.08
sein, die ich mit stuff
Funktion versucht, aber das wird für nicht funktionieren -80.000.00
select stuff(ValuesT ,3,1,'') from TableT
Schön! Welchen Umfang haben VALUES in Ihrem CTE? Ich habe auch etwas mit CTE versucht, aber ich bin nicht auf das Ergebnis gekommen. 10x –
Der CTE war nur eine schnelle Möglichkeit, einen echten Tisch zu emulieren. Nicht anders als wenn ich das tat: CREATE Tabelle dbo.sampledata (val varchar (20)); INSERT dbo.sampledata WERTE ('-9.827.08'), ('-9.657.40'), ('-80.000.00'), ('-8.700.00'), ('-8.542. 43 '), (' - 8.403.00 '); SUBSTRING WÄHLEN (val, 1, d1.d-1) + SUBSTRING (val, d1.d + 1, 100) VON dbo.sampleData CROSS APPLY (WERTE (CHARINDEX ('.', Val))) d1 (d); edit: gerade jetzt gelernt, dass Sie nicht SQL-Code in diesen Antworten tun können;) –
Vielen Dank! Ich habe den Code einfach in SQL Environment kopiert und dort formatiert. –