* union 과 union all / 차집합과 교집합 /* union 과 union all */ /* select 결과 합치기 union : 중복 값 자동 제거*/ select distinct bank from stnt union select distinct bank from tcher; /* union all: 중복 값 제거 안함*/ select distinct bank from stnt union all select distinct bank from tcher; /* 차집합 mysql 은 차집합 문법을 지원하지 않는다. 따라서 다음과 기존의 SQL 문법을 사용해서 처리해야 한다. */ select distinct bank from stnt where not bank in (select distinc..
* Foreign key 등장배경 ? 정보의 중복 저장 방지 ! 작성자 정보가 중복해서 저장되면 ① 메모리 낭비 문제와 ② 작성자 정보 변경 시 결함 문제가 발생할 수 있다. 작성자 테이블 생성: 작성자 정보를 저장하기 위한 별도의 테이블을 생성 이 테이블은 작성자 번호와 작성자 이름, 작성자 메일, 작성자 사진 정보를 저장 다른 테이블에서 작성자 번호 사용: 다른 테이블에서 작성자 정보를 저장할 때, 작성자 번호를 참조하여 작성자 테이블과 연결. 예를 들어, "게시글" 테이블에서 작성자 정보를 저장하는 경우, 작성자 번호를 Foreign key로 사용하여 작성자 테이블과 관련시킨다. 작성자 정보 중복 제거: 작성자 정보 중복을 제거하고 작성자 테이블에서 각 작성자의 정보를 유일하게 관리 작성자 이름, ..
* MySQL Client와 쓰레드 * auto commit = false ## autocommit mysql은 autocommit의 기본 값이 true이다. 따라서 명령창에서 SQL을 실행하면 바로 실제 테이블에 적용된다. 수동으로 처리하고 싶다면 autocommit을 false로 설정하라! > set autocommit=false; * commit insert/update/delete을 수행한 후 승인을 해야만 실제 테이블에 적용된다. > commmit; auto commit = false이기 때문에 변경을 해도 commit 하기 전까지는 적용이 되지 않는다. 따라서 다른 쉘을 실행해서 테이블을 확인해보면 반영되어있지 않는 것을 확인할 수 있다. 기존 쉘 다른 쉘 기존 쉘 커밋완료 다른 쉘 적용된 것..