320x100

insert 3

INSERT와 REPLACE 차이

INSERT는 무조건 테이블에 추가하는 것이고 REPLACE는 기존 테이블에 데이터가 있으면 삭제 하고 추가하는 것이다. REPLACE를 사용하는 경우는 다음과 같다. INSERT로 데이터를 삽입하는 경우 기존 테이블의 데이터와 충돌하면 뒤의 작업들은 실패 처리 된다. 그러므로 SELECT를 하고 나서 충돌나지 않게 작업해줘야 하는데 REPLACE는 한번의 쿼리로 작동이 가능하다. https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=reinstate10&logNo=220071702943 MySQL에서 INSERT 와 REPLACE 의 차이 MySQL에서 사용하는 INSERT 구문과 REPLACE 구문의 용도와 차이점을 정리한다. INS..

DB/MYSQL 2021.10.13

Insert 할 때 value 조건문 걸기

가끔 insert나 select 등 값에 조건을 걸어 다른 값으로 표현하거나 삽입하고 싶은 경우가 있다. 나 같은 경우엔 테이블에 nullable한 datetime 컬럼이 있고 파라미터로 unix 시간을 받는데, 파라미터 값이 0인 경우엔 datetime에 NULL을 넣고, 0이 아니면 datetime으로 변환한 값을 넣고 싶었다. CASE ~ WHEN을 쓰는 방법과 IF를 쓰는 방법 2가지가 있다. CREATE PROCEDURE `sp` ( IN _start_time BIGINT ) BEGIN -- 1. CASE~WHEN INSERT INTO (start_date) VALUES ((CASE WHEN _start_time = 0 THEN NULL ELSE FROM_UNIXTIME(_start_time))..

DB/MYSQL 2021.10.05

std::map

map은 key와 value로 구성된 컨테이너로 을 include해 사용할 수 있다. 선언 // key_type - 키의 오름차순으로 정렬되며 정수형 > 스트링 > 사용자 정의 타입 순으로 느려진다. std::map map_container; 데이터 삽입 insert의 결과로 pair가 리턴되며, second값이 bool 타입이므로 insert의 성공여부를 알 수 있다. map_container.insert(std::make_pair(key, data)); 데이터를 삽입하기에 가장 편한 방법이다. map_container[key] = data; 이 두 가지 방법의 차이점에 대해 정리해둔 블로그 내용을 간략히 얘기하자면, operator[]는 map에서 키를 먼저 찾아보고 없는 경우에 value의 기본 생..

320x100