Published: 28 May 2018 › Updated: 28 May 2018
[MySQL] SELECT 해온 데이터 기반으로 값을 변경해서 INSERT 하기
데이터베이스 작업을 하다보면 기존에 있는 데이터와 동일한 값의 데이터를 생성하거나, 기존에 있는 데이터를 기반으로 약간의 값 변경만을 적용하여 데이터를 생성하고 싶을때가 많다. 각각 경우에 어떻게 해야되는지 한번 살펴보도록 하자.
아래 쿼리를 실행하면 SELECT구문에서 선택된 row들이 바로 INSERT가 된다.
INSERT INTO account (`user_id`, `platform`, `username`, `last_login`, `created_at`)
SELECT `user_id`, `platform`, `username`, `last_login`, `created_at` FROM account WHERE platform="android";
SELECT 구문에서 선택된 row들의 값을 변경해서 다른 값을 INSERT하고 싶다면 다음과같이 필드 이름 대신 원하는 값을 지정해주면 된다. 아래 예제에서 platform 필드에는 iphone이, created_at에서는 DB의 현재 시간이 새롭게 지정되어 INSERT되는것을 알 수 있다.
INSERT INTO account (`user_id`, `platform`, `username`, `last_login`, `created_at`)
SELECT `user_id`, 'iphone', `username`, `last_login`, now() FROM account WHERE platform="android";Leave [MySQL] SELECT 해온 데이터 기반으로 값을 변경해서 INSERT 하기 to:
Read more #kr posts
Best Posts From 나는한다개발
We have not curated any of yjiq150's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.
More Posts From 나는한다개발
- Playground에서 Cocoapod 라이브러리 사용하기
- PAKE와 SRP Protocol을 이용한 인증
- API 서버 인증을 위한 JWT와 JWK 이해하기
- 인증서 파일 형식 및 확장자의 차이점 비교 설명
- Kafka Consumer offset reset 방법
- 크롬 익스텐션 개발 + React 적용하기
- Redis Overview
- MySQL InnoDB Transaction Model
- MySQL InnoDB Lock & Deadlock 이해하기
- [MySQL] SELECT 해온 데이터 기반으로 값을 변경해서 INSERT 하기
- 워드프레스 고유주소 원리
- Shotcut을 이용하여 리눅스 서버에서 템플릿 기반의 동영상 만들기
- MySQL - InnoDB Auto Increment 성능 최적화
- 클라우드플레어(Cloudflare) 동작 원리
- 커버로스 프로토콜(Kerberos Protocol)
- HTTP Cache 튜토리얼
- MySQL 중복 데이터 찾아서 삭제하기
- 구글 태그매니저 사용하기
- AWS EC2 ssh 로그인 쉽게하기
- 무료 SSL 인증서 적용하기 (Let's Encrypt)