logo

Funcția REPLACE în SQL

Această funcție de tip șir din Structured Query Language înlocuiește toate aparițiile acelor caractere din șirul original cu noul caracter sau subșir dat. Această funcție înlocuiește și valoarea coloanei cu noua valoare.

np.unde

Sintaxa funcției șir de caractere REPLACE

Sintaxa 1: Această sintaxă folosește funcția REPLACE cu numele coloanei tabelului SQL:

 SELECT REPLACE(Column_Name, Character/string_to_replace, new_String/character ) AS Alias_Name FROM Table_Name; 

În sintaxă, trebuie să specificăm numele acelei coloane ale cărei valori dorim să le înlocuim.

Sintaxa 2: Această sintaxă folosește funcția REPLACE cu șir:

 SELECT REPLACE(Original_String, String_to_Replace, New_String) AS Alias_Name; 

Sintaxa 3: Această sintaxă folosește funcția REPLACE cu caracterul individual:

 SELECT REPLACE(Original_String, character_to_Replace, New_Character) AS Alias_Name; 

Exemple de funcție REPLACE String

Exemplul 1: Următoarea interogare SELECT înlocuiește caracterul „R” cu „P” în șirul original:

 SELECT REPLACE( 'JAVATROINT', 'R', 'P' ) AS Website_Name; 

Ieșire:

Website_Name
JAVATPOINT

Exemplul 2: Următoarea interogare SELECT înlocuiește toate aparițiile caracterului „S” cu noul caracter „T” din șirul original:

 SELECT REPLACE( 'JAVASPOINS', 'S', 'T') AS Website_Name; 

Ieșire:

Website_Name
JAVATPOINT

Exemplul 3: Următoarea interogare SELECT înlocuiește subșirul „Tutoriale” cu noul cuvânt „Articole” în șirul original dat:

 SELECT REPLACE( 'JavaTpoint provides various Tutorials.', 'Tutorials', 'Articles') AS JavaTpoint_Sentence; 

Ieșire:

JavaTpoint_Sentence
JAVATPOINT oferă diverse articole.

Exemplul 4: Următoarea interogare SELECT înlocuiește simbolul din șirul original cu un simbol nou:

 SELECT REPLACE( '####98221545###', '#', '$') AS Replace_Symbol ; 

Ieșire:

Înlocuiți_Simbol
$$$221545$$

Exemplul 5: Următoarea interogare SELECT înlocuiește anul din șirul original:

 SELECT REPLACE( '2021JavaTpoint2021', '2021', '2022'); 

Ieșire:

 2022JavaTpoint2022 

Exemplul 6: Acest exemplu folosește funcția REPLACE cu tabelul în limbajul de interogare structurat.

java altfel dacă

În acest exemplu, trebuie să creăm un nou tabel SQL prin care vom executa funcția REPLACE() pe coloane. Sintaxa pentru crearea noului tabel în baza de date SQL este următoarea:

 CREATE TABLE table_name ( First_Column_of_table Data Type (character_size of 1st Column), Second_Column_of_table Data Type (character_size of the 2nd column ), Third_Column_of_table Data Type (character_size of the 3rd column), ... Last_Column_of_table Data Type (character_size of the Nth column) ); 

Următoarea instrucțiune CREATE creează Student_Marks masa:

 CREATE TABLE Student_Marks ( Student_ID INT NOT NULL PRIMARY KEY, Student_First_Name VARCHAR (100), Student_Middle_Name VARCHAR (100), Student_Last_Name VARCHAR (100), Student_Class INT NOT NULL, Student_City Varchar(120), Student_State Varchar (80), Student_Marks INT ); 

Interogările de mai jos INSERT inserează evidențele facultăților facultăților în Student_Marks masa:

 INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4001, Aman, Roy, Sharma, 4, Chandigarh, Punjab, 88); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES ( 4002, Vishal, Gurr, Sharma, 8, Murthal, Haryana, 95 ); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4007, Raj, singhania, Gupta, 6, Ghaziabad, Uttar Pradesh, 91); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4004, Yash, Chopra, Singhania, 9, Jaipur, Rajasthan, 85); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4011, Vinay, Sharma, Roy, 8, Chandigarh, Punjab, 94); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4006, Manoj, singhania, Gupta, 5, Ghaziabad, Uttar Pradesh, 83); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4010, Ram, Raheem, Gupta, 9, Lucknow, Uttar Pradesh, 89); 

Următoarea instrucțiune SELECT afișează înregistrările introduse ale celor de mai sus Student_Marks masa:

 SELECT * FROM Student_Marks; 

Carnet de student Prenume_Student Student_Middle_Nume Nume_Student Student_Class Orașul_Student Student_State Student_Marks
4001 Sigur Roy Sharma 4 Chandigarh Punjab 88
4002 Vishal Gurr Sharma 8 Murthal Haryana 95
4007 Raj Singhania Gupta 6 Ghaziabad Uttar Pradesh 91
4004 Yash Chopra Singhania 9 Jaipur Rajasthan 85
4011 Vinay Sharma Roy 8 Chandigarh Punjab 94
4006 Manoj Singhania Gupta 5 Ghaziabad Uttar Pradesh 83
4010 RAM Raheem Gupta 9 Lucknow Uttar Pradesh 89

Interogarea 1: Următoarea interogare SELECT folosește funcția REPLACE cu coloana Student_Last_Name din tabelul Student_Marks de mai sus:

 SELECT Student_Last_Name, REPLACE(Student_Last_Name, 'a', 'r') AS REPLACE_a_r FROM Student_Marks; 

Această instrucțiune SQL înlocuiește toate aparițiile lui „a” cu „r” în numele de familie al fiecărui student:

Ieșire:

Nume_Student Înlocuiește_a_r
Sharma Shrrmr
Sharma Shrrmr
Gupta Guptr
Singhania Sinhrnir
Roy Roy
Gupta Guptr
Gupta Guptr

Interogarea 2: Următoarea interogare SELECT utilizează funcția REPLACE cu coloana Student_City și Student_State a acelor studenți al căror Student_Id este mai mare de 4002 în tabelul Student_Marks de mai sus:

 SELECT Student_Id, REPLACE(Student_City, 'Chandigarh', 'Munnar'), REPLACE(Student_State, 'Punjab', 'Kerala ) FROM Student_Marks WHERE Student_Id >4002; 

Această instrucțiune SQL înlocuiește orașul Chandigarh și statul Punjab al acelor studenți al căror ID_Student este mai mare de 4002.

Ieșire:


Carnet de student REPLACE(Orașul_Student, „Chandigarh”, „Munnar”) REPLACE(Student_State, „Punjab”, „Kerala )
4007 Ghaziabad Uttar Pradesh
4004 Jaipur Rajasthan
4011 Munnar Kerala
4006 Ghaziabad Uttar Pradesh
4010 Lucknow Uttar Pradesh