Tiny Star

📊DataBase 21

[🪪SQLD] 2과목 - SQL 기본 : SELECT문/WHERE절 (24년 개정 요약)

[SELECT문] · SELECT문 -> 테이블에 입력된 데이터를 조회하기 위해서 사용되며, 특정 칼럼/행만 조회가 가능 · SELECT 문법 1) SELECT * : 모든 칼럼을 출력 (‘*’은 모든 칼럼을 의미) 2) FROM 테이블명 : 테이블을 지정 3) WHERE 조건 : FROM에서 지정한 테이블의 조회 조건을 지정 · SELECT 칼럼 지정 1) SELECT 칼럼1, 칼럼2 FROM 테이블명; - 해당 테이블에서 칼럼 1,2만 출력 2) SELECT * FROM 테이블명; - 해당 테이블의 모든 칼럼과 행을 조회 3) SELECT 칼럼1 || ‘문자’ FROM 테이블명; - 해당 테이블의 모든 행에서 칼럼1을 조회 - 단, 칼럼1 뒤에 ‘문자’에 들어간 단어를 결합 ex) 출력 예시 : 칼럼..

[🪪SQLD] 2과목 - SQL 기본 : 관계형 데이터 베이스 (24년 개정 요약)

· 데이터 베이스 -> 특정 기업이나 조직 또는 개인이 필요에 의해 데이터를 일정한 형태로 저장한 것 · 관계형 데이터 베이스 -> 릴레이션 (Relation)과 릴레이션의 조인 연산을 통해 합집합, 교집합, 차집합 등 생성이 가능 -> 현재 기업에서 가장 많이 사용됨 · 관계형 데이터 베이스의 등장 -> 1970년대 E.F Codd 박사 논문에서 처음 소개된 데이터 베이스 · 데이터 베이스의 종류 -> 데이터를 어떤 형태의 자료구조 (Data Structure)로 사용하는가에 따라서 구분 1) 계층형 데이터 베이스 (1:N 관계 표현) - 트리 (Tree) 형태의 자료구조에 데이터를 저장하고 관리 2) 네트워크 데이터 베이스 (1:N, M:N 관계 표현) - 오너 (Owner) 와 멤버 (Member)..

[🪪SQLD] 1과목 - 데이터 모델링의 이해 : 관계와 조인 / 트랜잭션 / Null 속 (24년 개정 요약)

[관계와 조인의 이해] · 관계와 조인 -> 관계형 데이터 베이스는 엔터티 간의 관계를 정의 ex) 회원과 주문은 엔터티이고 그 사이는 발주라는 관계가 존재 · 계층형 구조 표현 -> 실세계에서는 부모자식의 관계형태인 계층형 구조가 많이 나타남 ex) 윈도우 파일 시스템 등 (상위-하위 폴더) [모델이 표현하는 트랜잭션의 이해] · 식별 관계 (Identification Relationship) ex) 고객과 계좌입금 엔터티에서 고객은 강한개체 -> 강한 개체는 어떤 다른 엔터티에게 의존하지 않고 독립적으로 존재하며, 다른 엔터티와 관계를 가질 땐 다른 엔터티에게 기본키를 공유함 -> 강한 개체는 식별 관계로 표현되는데, 식별관계란 강한개체의 기본키가 다른 엔터티의 기본키의 하나로 공유되는 것으로 강한 ..

[🪪SQLD] 1과목 - 데이터 모델링의 이해 : 정규화와 반정규화 (24년 개정 요약)

· 정규화 (Normalization) -> 데이터의 일관성, 데이터 중복 방지, 데이터 유연성을 위해 데이터를 분해하고 구조화시키는 과정 · 정규화의 목적 1) 중복을 제거하여 저장공간 절약 및 확보 2) 데이터의 무결성을 보장하고 정확성과 일관성을 유지 3) 이상현상의 발생 가능성 저하 -> 데이터 입력, 수정, 삭제 성능은 향상, 조회의 성능은 향상되거나 저하 · 이상현상 (Anomaly) -> 불필요한 데이터 중복으로 릴레이션에 대한 삽입/수정/삭제 연산 수행 시 발생할 수 있는 부작용 1) 삽입 이상 : 데이터를 삽입하기 위해 불필요한 데이터도 함께 삽입 2) 갱신 이상 : 중복 튜플 중 일부만 변경 시 데이터 불일치의 문제 3) 삭제 이상 : 튜플 삭제 시 필요한 데이터까지 손실되는 문제 · ..

[🪪SQLD] 1과목 - 데이터 모델링의 이해 : 식별자 / 본질 식별자 vs 인조 식별자 (24년 개정 요약)

[식별자] · 식별자 (Identifier) -> 엔터티를 대표할 수 있는 유일성을 만족하는 속성 · 주식별자 (기본키, Primary Key - PK)의 특징 1) 최소성 : 최소성을 만족하는 키 2) 대표성 : 엔터티를 대표할 수 있어야 함 3) 유일성 : 엔터티의 인스턴스를 유일하게 식별해야 함 4) 불변성 : 자주 변경되지 않아야 함 5) 존재성 : 항상 데이터 값이 있어야 함 · 키의 종류 1) 기본키 (Primary Key) : 후보키 중 엔터티를 대표할 수 있는 키 2) 후보키 (Candidate Key) : 유일성과 최소성을 만족하는 키 3) 슈퍼키 (Super Key) : 유일성은 만족하지만 최소성을 만족하지 않음 4) 대체키 (Alternate Key) : 여러 후보키 중 기본키를 선정..

[🪪SQLD] 1과목 - 데이터 모델링의 이해 : 속성 / 관계 (24년 개정 요약)

[속성] · 속성 (Attribute) -> 엔터티가 가지는 항목으로 업무에 필요한 데이터를 저장할 수 있음 -> 인스턴스의 구성요소이고 의미적으로 더 이상 분리되지 않는 최소 단위 · 속성의 특징 1) 업무에서 관리되는 정보로 일반적으로는 하나의 값만 가짐 2) 주식별자에게 함수적으로 종속됨 즉, 기본키가 변경되면 속성의 값도 변경된다는 것 · 속성의 종류 1) 분해 여부에 따른 속성의 종류 - 단일 속성 : 하나의 의미로 구성된 것 ex) 회원 ID, 이름 등 - 복합 속성 : 여러 개의 의미가 있는 것 ex) 주소 등 - 시/군/동 등으로 분해가 가능 - 다중값 속성 : 여러 개의 값을 가질 수 있는 것으로 엔터티로 분해됨 ex) 상품 리스트 2) 특성에 따른 속성의 종류 - 기본 속성 : 비즈니스..

[🪪SQLD] 1과목 - 데이터 모델링의 이해 : 엔터티 (24년 개정 요약)

· 엔터티 (Entity) -> 업무에서 관리해야 하는 데이터 집합을 의미하며 저장되고 관리되어야 하는 데이터로 개념, 사건, 장소 등의 명사 · 엔터티의 의미 · 엔터티 도출 -> 엔터티는 비즈니스 프로세스에서 관리되어야 하는 정보를 추출함 · 엔터티 종류 1) 유무형에 따른 분류 - 유형 엔터티 : 업무에서 도출되며 지속적으로 사용되는 엔터티 ex) 고객, 강사, 사원 등 - 개념 엔터티 : 개념적으로 사용되는 엔터티로 물리적 형태가 없음 ex) 거래소 종목, 코스닥 종목, 생명보험 상품 등 - 사건 엔터티 : 비즈니스 프로세스를 실행하면서 생성되는 엔터티 ex) 주문, 체결, 취소주문, 수수료 청구 등 2) 발생 시점에 따른 분류 - 기본 엔터티 (키 엔터티) : 다른 엔터티로 영향을 받지 않고 독..

[🪪SQLD] 1과목 - 데이터 모델링의 이해 : 데이터 모델의 이해 (24년 개정 요약)

그동안 공부한 1과목 복습 겸 내용 공유를 할까한다. 아직 개정된 요약은 많이 없기 때문에 구매한 이론서를 보고 하나하나 요약을 해봤다. 이 글만 보고 합격할 수 있도록 출판사 매출에 씨를 말리겠다는 각오를 해본다. · · · [데이터 모델의 이해] · 데이터 모델링 : 비즈니스 운영 내에서 데이터의 수집, 저장, 사용방법 등 전체적인 내용을 개념화하고 시각화하여 데이터베이스를 구축하기 위한 분석 또는 설계의 과정으로 데이터 모델링 표기법을 사용하는 데이터 관점의 업무 분석기법 · 모델링의 특징 1) 추상화(Abstraction) : 현실세계를 간략하게 표현 2) 단순화(Simplification) : 누구나 쉽게 이해할 수 있도록 표현 3) 명확성(Clarity) : 명확하게 의미가 해석되어야 하고 한..

[MongoDB] MongoDB(몽고디비)-python 연결하기

Python에서 MongoDB를 조작하기 위해서는 pymongo와 dnspython. 두 개의 라이브러리를 생성해야 하는데, Visual Studio Code에서 가상환경을 잡아 준 뒤 터미널을 통해 두 개의 라이브러리를 설치할 수 있다. 라이브러리 설치 'pip install dnspython'을 터미널에 먼저 설치하고, 설치가 완료되면 뒤이어 'pip install pymongo'도 작성해주면 라이브러리 설치가 완료된다. pymongo접속하기 from pymongo import MongoClient from pymongo import MongoClient client = MongoClient('여기에 URL 입력') db = client.dbname pymongo의 라이브러리를 이용하기 위해서는 사용..