본문 바로가기

DB

(4)
DB 면접 예상 질문) "다음 상황 별 SQL 쿼리를 작성해주세요." 1.  Given a database with table members(id, name). Find the name of all members whose name start with 'h' or  'H'. The final answer must have only column (name).SELECT FROM members WHERE name LIKE 'h%' OR LIKE 'H%'; 2.  A company's database maintains table salesperson(id, name) and s_order(order_date, cust_id , sale_id) to keep track of marketing. Find the names of salesperson that have more tha..
DB 면접 예상 질문) "제1,2,3정규화에 대해 설명해주세요." 정규화: 테이블 설계의 기반이 된다.- 제1정규화: %LIKE% 안쓰고 WHERE 만 쓸 수 있도록 한 곳에는 데이터 하나만 존재- 제2정규화: 테이블 당 주제와 거기에 맞는 속성만 갖고 있어야 한다. 그래야 데이터의 변화가 제한적으로 된다. 예를 들어, 회원 테이블이 있고 회원 테이블 당 가입한 프로그램 및 프로그램 가격을 갖고 있다면, 프로그램 가격이 수정되면, 회원 별 갖는 프로그램 가격을 수정해야 한다. 그것보다 회원 테이블에는 회원별 가입한 프로그램만 기록해놓고, 프로그램 테이블을 따로 만들어 프로그램 가격 수정 시 딱 그 프로그램에 해당하는 가격만 수정하면 된다.- 제2정규화 (다른말): partial dependency가 있을 때. composite primary key가 있을 때, 일부 속..
DB 예상 면접 질문) "ACID가 뭐에요? 어디에 쓰여요?" Atomicity: 원자성- Even if a transaction is composed of several tasks (queries), a transaction should be processed in each transaction unitBEGIN TRANSACTION;UPDATE accounts SET balance = balance - 100000 WHERE name = 'A';UPDATE accounts SET balane = balance + 100000 WHERE name = 'B';COMMIT;Consistancy: 일관성- ensure that database rules are always followed before and after a transaction예: balance는 음수가..
DATABASE 면접 예상 질문) "인덱스가 뭔가요?" 인덱스: 기준에 의해 정렬한 칼럼인덱스가 되기 위해 필요한 조건: 기준에 의한 정렬인덱스 자료구조: B 트리인덱스는 B 트리 형태로 저장되서 검색 시 lower, between, upper 로 분할해 search 가 가능하다인덱스 최종 자료구조: B+ 트리데이터는 leaf에 저장 된다.데이터들은 서로 값이 인접한 데이터끼리 link 되어있다node는 search guideline 만 제공한다.B+ 트리 특징: 데이터들 끼리 연결되어 있어 범위 검색 (range search) 이 쉬워진다시간 복잡도:검색: 트리를 타면서 검색 O(log N)수정:단순 수정 시: 검색에 드는 비용 O(log N)삭제 및 생성 시 : O(log N) + O(log N) = O(log N)삽입:유효 노드를 찾음 O(log N)...