mysql 쿼리문 질문 좀 드리겠습니다. ㅜㅜ 정보
mysql 쿼리문 질문 좀 드리겠습니다. ㅜㅜ
본문
예를들어 테이블이름을 abc라고 가정하고 필드이름은 file_name이라고 했을때,
필드값이 data/aaa.jpg , data/bbb.jpg 등등 300개가 있을때 data/앞에 my/라는것을 전부 붙이고 싶거든요.
쿼리문으로 한꺼번에 일괄적으로 변경할 수 있나요?
data/aaa.jpg => my/data/aaa.jpg
data/bbb.jpg => my/data/bbb.jpg
이렇게요. 일괄적으로요. 한번 풀어주세요. 부탁드려요 ^^
추천
0
0
댓글 3개
update abc set file_name = CONCAT('my/',file_name)
이렇게 하시면 될듯...
이렇게 하시면 될듯...
저라면 ㅎㅎ^^ 그냥 php 문으로 하나 짜셔 오류 확인까지 하시는게 좋을듯 싶기도 하네요.~
위에 좋은 방법을 알려주셨지만,,,,, 전 좀 완벽주의자 이다 보니 ㅡㅡ;; 오류 확인까지 필요해서 ㅎ;;;;
for으로 하셔도 300개 정도면 2000개 이하면 꽤 빠르게 변경됩니다.
위에 좋은 방법을 알려주셨지만,,,,, 전 좀 완벽주의자 이다 보니 ㅡㅡ;; 오류 확인까지 필요해서 ㅎ;;;;
for으로 하셔도 300개 정도면 2000개 이하면 꽤 빠르게 변경됩니다.
update table_name set replace(file_name, '/data', 'my/data/')
# 주) 제가 왠만하면 검증이 필요한건 해보고 답을하는데 지금 테스트해볼 상황이 안되어 테스트를 못해보겠습니다..;;
위 쿼리로 안되면 regexp 로 정규식패턴으로 처리를 하면 가능할듯도 합니다만..
위 쿼리전에 뒤에 where 붙여서 테스트로 하나 해보고 실행하십시오.
# 주) 제가 왠만하면 검증이 필요한건 해보고 답을하는데 지금 테스트해볼 상황이 안되어 테스트를 못해보겠습니다..;;
위 쿼리로 안되면 regexp 로 정규식패턴으로 처리를 하면 가능할듯도 합니다만..
위 쿼리전에 뒤에 where 붙여서 테스트로 하나 해보고 실행하십시오.