분류 전체보기

    SELECT를 공략하자 (DB 스터디 4주차)

    SELECT를 공략하자 (DB 스터디 4주차)

    목표 SELECT에 대한 이해 8.1 SELECT는 SQL의 심장부 SELECT는 릴레이션이 연산 단위 한 개 이상의 릴레이션을 조합해 새로운 릴레이션을 뽑음 릴레이션 : 테이블 → 테이블의 데이터 조회는 "SELECT”만 가능 SELECT의 기본 구조 SELECT 컬럼 목록 # Projection FROM 테이블의 목록 # Product WHERE 검색 조건 # Restrict SELECT는 Projection, Product, Restrict의 연산이 한번에 이루어짐 Projection : 속성을 선택하는 연산 Product : 해당하는 릴레이션의 곱집합 Restrict : 특정 조건에 맞는 튜플을 포함한 릴레이션 반환 연산 SELECT 내 연산의 논리적인 순서 : Product → Restrict ..

    Optional 파헤치기!

    Optional 파헤치기!

    자비스 앤 빌런즈 인터뷰 프로세스를 진행하면서 면접관님께서 “Optional.of로 왜 데이터를 저장할 때 감쌌는지” 여쭤보셨다. 나는 내가 작성한 로직 의도대로 말씀드렸지만, 실제 메서드 내부의 동작이나 어떤 파라미터가 들어오고 어떤 경우에 이를 쓰는지, 어떤 예외가 발생할 수 있는지 등등 여러가지 꼬리 질문이 들어왔고 제대로 답변 드리지 못했다. 특히, Optional을 주로 써오면서 .of().orElseThrow() 이런 방식으로 코딩을 가끔 했었는데 그동안은 예외가 발생하지 않았던 것이지 null이 들어오는 경우 반드시 NPE가 발생하는 것에 대해 면접을 통해 알게 되었다. 이를 계기로 기본적인 Optional 사용법에 대해 파악하고 앞으로는 Optional을 사용할 때 적절한 경우와 조심해서 ..

    정규화 이론(두번째) - 결합 종속성 (DB 스터디 3주차)

    정규화 이론(두번째) - 결합 종속성 (DB 스터디 3주차)

    "관계형 데이터베이스 실전 입문 - 오쿠노 마키아"를 읽으며 매주 스터디 진행 4.1 결합 종속성 (JD) BCNF를 통해 후보키, 키가 아닌 속성의 함수종속성을 제거했지만, 중복을 모두 제거한 것은 아니다. ☁️ 결합 종속성 (Join Dependency, JD) → 키 자체에 다중성이 포함됐을 때 나타나는 중복 [정의] A, B, … C를 릴레이션 R의 제목의 부분집합이라고 할 때 A,B,C의 프로젝션에 대응하는 릴레이션을 결합한 결과 = 릴레이션 R 이면 “결합 종속성”이다. [표현식] ☆{A, B, …, C} A, B, C의 제목 중 하나가 R의 제목 전체와 같은 경우 “결합 종속성이 명백하다.” 릴레이션 내에 명백하지 않은 결합 종속성이 존재하면 4NF ~ 6NF의 대상이다. 결합 종속성은 프로..

    SQL과 관계형 모델 (정규화) (DB 스터디 3주차)

    SQL과 관계형 모델 (정규화) (DB 스터디 3주차)

    "관계형 데이터베이스 실전 입문 - 오쿠노 마키아"를 읽으며 매주 스터디 진행 목표 왜 정규화가 필요한지? 정규화는 어떤 과정인지? 3.1 왜 DB 설계가 중요한가? 테이블이 적절하게 설계되지 않으면 쿼리를 통한 데이터 조작이 어렵다. 정규화를 통해 테이블의 깔끔한 설계를 가능하게 한다. 3.2 정규화 관계형 모델을 보완하는 이론 🔥 “정규화” - RDB를 잘 다루는 데 필요한 기술이며 관계형 모델을 전제로 구축된 DB 설계 이론 - 관계형 모델을 보완하는 이론 정규화 ≠ 관계형 모델의 일부 변칙 (Anomalies) 정규화의 이점 = 모순 방지 변칙 (Anomalies) : 릴레이션을 잘못 설계해 모순이 발생하는 상태 SQL의 이상현상 (삽입, 갱신, 삭제 이상) 변칙의 예 이름 과목 학년 맹준영 DB..

    술어논리와 관계형 모델 (DB 스터디 2주차)

    술어논리와 관계형 모델 (DB 스터디 2주차)

    "관계형 데이터베이스 실전 입문 - 오쿠노 마키아"를 읽으며 매주 스터디 진행 2.1 술어논리와 관계형 모델 명제와 공리 명제 : 어떤 사물의 참/거짓 판단 방법 정리 : 증명을 통해 참이 밝혀진 것 공리 : 증명없이 참으로 받아지는 명제 여러 개의 명제를 통해 공공적으로 올바르다고 정한 정리 = 공리 공리로 정의된 명제끼리는 모순 X 공리의 집합 = 공리계, 모순이 없는 완전성 양화논리 명제를 이용해 모든 것을 참/거짓 판단 불가능 → 양화논리의 등장 집단을 대상으로 참/거짓을 묻는 것 양화논리의 두가지 종류 "어떤 집단의 요소 전체가 어떠한 성질을 충족하는가?” → 범용정량자(∀) “어떤 집단의 요소는 어떠한 성질을 충족하는 것이 존재하는가?” → 존재정량(∃) 술어논리 기존 집합 → 새로운 집합의 ..