Sostituisci funzione in SQL Server

Una funzione di sostituzione in SQL Server viene utilizzata per sostituire caratteri singoli o multipli con un'altra stringa a carattere singolo o multiplo.

Sintassi: sostituire la funzione in SQL Server

REPLACE (input_string_expression, string_pattern, string_replacement)

input_string_expression: stringa di caratteri in ingresso dove verrà cercato string_pattern
string_pattern: stringa da cercare all'interno di un'espressione stringa di input
string_replacement: puntura da sostituire in una stringa di input

Iniziamo con alcuni esempi.

1. Sostituisci un singolo carattere in una stringa:

SELECT REPLACE ('bing', 'b', 'p') come Example1;


Nell'esempio sopra, carattere B in bing è sostituito con p e restituisce una nuova stringa 'ping'.

2. Sostituisci più occorrenze di un carattere in una stringa:

SELECT REPLACE ('Vishwanath', 'a', 'v') come Example2; SELEZIONA SOSTITUISCI ("Vishal", "i", "v") come Example2;


Nell'esempio sopra, le ricorrenze multiple di un singolo carattere vengono sostituite dal carattere sostitutivo e restituiscono una nuova stringa.

3. Sostituisci una stringa con un'altra:

SELEZIONA SOSTITUISCI ("BMW è la mia macchina preferita", "BMW", "Jaguar") come Example3;


Nell'esempio sopra, la stringa BMW viene sostituita con Jaguar e una nuova stringa viene restituita come output.

4. Sostituisci la funzione sulla colonna della tabella:

CREATE TABLE #Employee (EmployeeId INT, EmpName VARCHAR (50)); INSERISCI NEGLI VALORI #Employee (1, 'Atul_Kokam'); INSERISCI NEGLI VALORI #Employee (1, 'Sang_W'); GO - Replacing _ (Underscore) nel nome del dipendente con uno spazio. SELECT REPLACE (EmpName, '_', ") As CorrectedEmpName FROM #Employee;


5. Sostituisci funzione con l'istruzione Update in SQL Server:

Nell'esempio sopra, abbiamo sostituito _ (Underscore) nel nome del dipendente con uno spazio. Tale modifica è stata apportata solo durante la visualizzazione del nome del dipendente. Possiamo usare una funzione di sostituzione per apportare modifiche permanenti nella nostra tabella.

CREATE TABLE #Employee (EmployeeId INT, EmpName VARCHAR (50)); INSERISCI NEGLI VALORI #Employee (1, 'Atul_Kokam'); INSERISCI NEGLI VALORI #Employee (1, 'Sang_W'); GO SELECT * FROM #Employee; - Con Underscore - Replacing _ (Underscore) nel nome del dipendente con uno spazio. UPDATE #Employee SET EmpName = REPLACE (EmpName, '_', "); SELECT * FROM #Employee; --Replaced Underscore con Space