DB - 서브 쿼리, DISTINCT, 페이징
데이터베이스 스터디 2주차에서 학습하고 정리한 내용입니다. 1. 서브 쿼리(SubQuery) 서브쿼리란 다른 쿼리 내부에 포함되어 있는 SELECT 문을 의미한다. 다른 쿼리의 내부에 포함되어 있어 메인 쿼리의 조건을 결정한다. 서브 쿼리 실행 과정 서브 쿼리 실행 -> 메인 쿼리 실행 이 때 서브 쿼리는 메인 쿼리의 속성을 사용할 수...
데이터베이스 스터디 2주차에서 학습하고 정리한 내용입니다. 1. 서브 쿼리(SubQuery) 서브쿼리란 다른 쿼리 내부에 포함되어 있는 SELECT 문을 의미한다. 다른 쿼리의 내부에 포함되어 있어 메인 쿼리의 조건을 결정한다. 서브 쿼리 실행 과정 서브 쿼리 실행 -> 메인 쿼리 실행 이 때 서브 쿼리는 메인 쿼리의 속성을 사용할 수...
데이터베이스 스터디 2주차에서 학습하고 정리한 내용입니다. 1. Join 관계 대수에서 조인은 Cross Product한 결과에 여러 조건을 추가한 것이다. Cross Product한 결과에 조건에 맞는 결과만 Selection하거나 Projection 한다. 예제 테이블 customers customer_i...
데이터베이스 스터디 2주차에서 학습하고 정리한 내용입니다. 1. SELECT 절 처리 순서 customers 테이블 customer_id customer_name 1 Kim 2 Lee ...
데이터베이스 스터디 2주차에서 학습하고 정리한 내용입니다. 1. 뷰(View) 뷰를 사용하는 가장 큰 이유는 논리적 데이터 독립성을 지원하기 때문이다. 개념 스키마의 테이블인 기본 테이블이 변경되어도 외부 스키마에서 사용하는 뷰가 변경되지 않으면 응용 프로그램은 영향을 받지 않는다. 예를 들어, 개념 스키마 테이블에 새로운 컬럼이 추가, 테이...
데이터베이스 스터디 2주차에서 학습하고 정리한 내용입니다. 1. 참조 무결성 타 테이블과 연관된 데이터가 입력, 수정, 삭제 시에도 데이터 간에 정확한 참조 관계를 유지시킨다. 외래키에 적용되는 개념으로 외래키가 어떠한 데이터를 참조할 때 이 데이터는 반드시 존재하는 값이어야 한다. 외래키가 유효하지 않은 데이터를 참조한다면 데이터의 일관성...
데이터베이스 스터디 2주차에서 학습하고 정리한 내용입니다. 1. SQL이란? SQL은 구조화 질의어(Structured Query Language)의 약자로 데이터베이스의 데이터를 조작하고 검색할 수 있는 언어이다. 관계 대수와 관계 해석 이 두 가지 수학적 쿼리 언어가 이 SQL의 바탕이 된다. 관계 대수와 관계 해석의 장점을 적절히 가져오...
데이터베이스 스터디 1주차에서 학습하고 정리한 내용입니다. 1. 파일 시스템 vs 데이터 베이스 데이터베이스와 파일 시스템 모두 데이터를 영속적으로 저장하기 위한 시스템인 점에서 공통점을 가진다. 동일한 공통점을 가짐에도 두 가지 독립적인 시스템이 존재한다는 말은 두 시스템 사이 장단점이 있다고 추측할 수 있다. 결론부터 말하자면 데이터베이스...
서론 기존의 프로젝트를 빌드업하기 위해 여러 수정 사항을 도입하기로 하였다. 하지만 기존의 프로젝트는 k8s로 구성되어 있었고 개발 환경에서 설정이 복잡하여 k8s를 Docker Compose로 먼저 마이그레이션 후 개발하기로 결정하였다. 그 과정에서 Docker Compose를 어떻게 작성했는지에 관해 정리한 내용이다. Docker Compose?...
요약 키-값 자료 구조에서 Log Structured File을 사용한 Hash Indexes 방식의 장점과 단점은 무엇인가요? Log Structured File을 적용한 Hash Indexes 방식은 데이터를 갱신할 때 즉각적으로 갱신하지 않고 임시로 중복된 키를 허용합니다. 한번 저장된 데이터는 수정이 불가능한 불변으로 이는 동시성 문제...
요약 Extract Method는 언제 사용하고 어떤 효과가 있나요? 메서드의 길이가 길다면 일부를 새로운 메서드로 추출하고 전체 메서드 크기를 작게 유지할 수 있습니다. 이 경우 코드의 가독성이 좋아지고 추출한 메서드를 다른 메서드에서 재활용할 수 있다는 장점이 있습니다. Introduce Explaining Variable는 언제 ...