logo

SQL의 REPLACE 함수

구조적 쿼리 언어의 이 문자열 함수는 원래 문자열에서 해당 문자의 모든 발생을 지정된 새 문자 또는 하위 문자열로 바꿉니다. 또한 이 함수는 열의 값을 새 값으로 바꿉니다.

봄 MVC

REPLACE 문자열 함수의 구문

구문 1: 이 구문은 SQL 테이블의 열 이름과 함께 REPLACE 함수를 사용합니다.

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

구문에서 값을 바꾸려는 열의 이름을 지정해야 합니다.

구문 2: 이 구문은 문자열과 함께 REPLACE 함수를 사용합니다.

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

구문 3: 이 구문은 개별 문자와 함께 REPLACE 함수를 사용합니다.

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

REPLACE 문자열 함수의 예

예시 1: 다음 SELECT 쿼리는 원래 문자열에서 'R' 문자를 'P'로 바꿉니다.

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

산출:

웹사이트_이름
자바포인트

예 2: 다음 SELECT 쿼리는 원래 문자열에서 문자 'S'의 모든 항목을 새 문자 'T'로 바꿉니다.

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

산출:

웹사이트_이름
자바포인트

예시 3: 다음 SELECT 쿼리는 지정된 원본 문자열에서 하위 문자열 'Tutorials'를 새 단어 'Articles'로 바꿉니다.

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

산출:

JavaTpoint_Sentence
JAVATPOINT는 다양한 기사를 제공합니다.

예시 4: 다음 SELECT 쿼리는 원래 문자열의 기호를 새 기호로 바꿉니다.

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

산출:

바꾸기_기호
$$$221545$$

예시 5: 다음 SELECT 쿼리는 원래 문자열의 연도를 바꿉니다.

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

산출:

 2022JavaTpoint2022 

예 6: 이 예에서는 구조적 쿼리 언어의 테이블에 REPLACE 함수를 사용합니다.

자바 기본 매개변수

이 예에서는 열에 대해 REPLACE() 함수를 실행할 새 SQL 테이블을 만들어야 합니다. SQL 데이터베이스에서 새 테이블을 생성하는 구문은 다음과 같습니다.

 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) ); 

다음 CREATE 문은 학생_성적 테이블:

 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 ); 

아래 INSERT 쿼리는 대학 교수진의 기록을 삽입합니다. 학생_성적 테이블:

 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); 

다음 SELECT 문은 위의 삽입된 레코드를 표시합니다. 학생_성적 테이블:

 SELECT * FROM Student_Marks; 

학생 아이디 학생_이름_이름 학생_중간_이름 학생_성_이름 학생_학급 학생_도시 학생_주 학생_성적
4001 안전한 로이 샤르마 4 찬디가르 펀자브어 88
4002 비샬 구르 샤르마 8 무르탈 하리아나 95
4007 주권 싱가니아 굽타 6 가지아바드 우타르프라데시 91
4004 야쉬 초프라 싱가니아 9 자이푸르 라자스탄 85
4011 비나이 샤르마 로이 8 찬디가르 펀자브어 94
4006 마노이 싱가니아 굽타 5 가지아바드 우타르프라데시 83
4010 라힘 굽타 9 러크나우 우타르프라데시 89

쿼리 1: 다음 SELECT 쿼리는 위 Student_Marks 테이블의 Student_Last_Name 열과 함께 REPLACE 함수를 사용합니다.

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

다음 SQL 문은 각 학생의 성에서 'a'를 모두 'r'로 바꿉니다.

산출:

학생_성_이름 교체_a_r
샤르마 슈르므르
샤르마 슈르므르
굽타 굽트르
싱가니아 신르니르
로이 로이
굽타 굽트르
굽타 굽트르

쿼리 2: 다음 SELECT 쿼리는 위 Student_Marks 테이블에서 Student_Id가 4002보다 큰 학생의 Student_City 및 Student_State 열과 함께 REPLACE 함수를 사용합니다.

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

이 SQL 문은 Student_ID가 4002보다 큰 학생의 찬디가르 시와 펀자브 주를 대체합니다.

산출:


학생 아이디 REPLACE(학생_도시, '찬디가르', '무나르') REPLACE(학생_주, '펀자브', '케랄라 )
4007 가지아바드 우타르프라데시
4004 자이푸르 라자스탄
4011 무나르 케 랄라
4006 가지아바드 우타르프라데시
4010 러크나우 우타르프라데시