해당 테이블의 어느 한 특정 컬럼에 있는 데이터를 특정 문자를 더 붙이고 싶습니다.

해당 테이블의 어느 한 특정 컬럼에 있는 데이터를 특정 문자를 더 붙이고 싶습니다.

QA

해당 테이블의 어느 한 특정 컬럼에 있는 데이터를 특정 문자를 더 붙이고 싶습니다.

본문

 

pay 테이블

id name
1 안녕하세요
2 우리집

 

현재 pay라는 데이터에 

 

name이라는 컬럼 값을 보면 

 

각각 '안녕하세요', '우리집'이 있습니다.

 

이것을 mysql 쿼리를 이용해서

 

'.png'를 붙이고 싶습니다.

 

그럼 '안녕하세요.png'

'우리집.png'가 되겠지요

 

이것을 

 


UPDATE pay AS p
SET p.name = p.name + (SELECT name FROM pay AS p1 WHERE p.id =p1.id)

 

이렇게하면...

 

SQL  4 8 (1093): Table 'p' is specified twice, both as a target for 'UPDATE' and as a separate source for data

 

라는 오류가 나오네요..

 

혹시 다른 방법이 있을까요?

이 질문에 댓글 쓰기 :

답변 1

단순히 안녕하세요.png, 우리집.png 이렇게 데이터를 업데이트 하시려면 방법은 여러 가지입니다.

UPDATE `pay` SET `name` = CONCAT(`name`, '.png');

 

* 디비 관련 작업은 무조건 백업부터 하고 실행하세요.

답변을 작성하시기 전에 로그인 해주세요.
전체 1,509
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT