SQL 7

[프로그래머스, SQL, Oracle] 평균 일일 대여 요금 구하기

목차 문제 설명다음은 어느 자동차 대여 회사에서 대여중인 자동차들의 정보를 담은 CAR_RENTAL_COMPANY_CAR 테이블입니다. CAR_RENTAL_COMPANY_CAR 테이블은 아래와 같은 구조로 되어있으며, CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS 는 각각 자동차 ID, 자동차 종류, 일일 대여 요금(원), 자동차 옵션 리스트를 나타냅니다. Column nameTypeNullableCAR_IDINTEGERFALSECAR_TYPEVARCHAR(255)FALSEDAILY_FEEINTEGERFALSEOPTIONSVARCHAR(255)FALSE 자동차 종류는 '세단', 'SUV', '승합차', '트럭', '리무진' 이 있습니다. 자동차 옵션 리스트는 콤마(',')로 구분된 키..

#6 정규화(Normalization)

목차정규화 Normalization데이터의 정합성(정확성과 일관성을 유지하며 보장)을 위해 엔터티를 작은 단위로 분리하는 과정이다. 정규화 시... : 입력, 수정, 삭제 성능은 향상된다고 보지만 데이터 조회 성능은 처리 조건에 따라 향상되는 경우도 있고 저하되는 경우도 있다. 하지만  모든 엔터티를 무작정 분리하면 안 된다. (제 1 정규형)모든 속성(컬럼)은 반드시 원자 값(atomic value)을 가져야 한다. 즉, 하나의 속성은 하나의 값만 포함해야 하며, 반복 그룹이나 배열 형태로 데이터를 저장하면 안 된다.예제아래와 같이 "이름"과 "국가"라는 속성을 가진 테이블이 있다고 하자. 이때 "국가" 열에 여러 개의 값이 하나의 셀에 들어가 있는 상태는 1NF를 위반한 사례다.이름국가권00대한민국,..

SQL/SQLD 2024.12.06

#5 데이터 모델링(식별자)

목차식별자란모든 엔터티는 인스턴스를 가지고 있고 인스턴스는 속성으로 자신의 특성을 나타낸다. 식별자는 이런 속성 중에 각각의 인스턴스를 구분 가능하게 만들어주는 대표적인 속성을 말한다. 주식별자주식별자는 기본키에 해당하는 속성인데, 하나의 속성이 주식별자가 될 수 있고 여러 개의 속성이 주식별자가 될 수 있다.유일성각 인스턴스에 유니크함을 부여하여 각 인스턴스 별로 식별이 가능하게 해야한다.최소성유일성을 보장하는 최소 개수의 속성이어야한다.불변성속성값이 되도록 변하지 않아야 한다.존재성속성값은 NULL일 수 없다.분류식별자를 분류하는 방식은 여러 가지이다. 1. 대표성 여부주식별자(Primary Identifier)-유일성, 최소성, 불변성, 존재성을 가진 대표 식별자-다른 엔터티와 참조 관계로 연결보조..

SQL/SQLD 2024.07.15

#4 데이터 모델링(관계)

관계(Relationship)란?시작하기 전에 엔터티와 객체 그리고 인스턴스에 대해 조금 알고가자..엔터티, 객체, 그리고 인스턴스는 각기 다른 컴퓨터 과학적인 개념이며, 조금씩 다른 의미를 가지고 있습니다.1.엔터티 데이터베이스 설계에서 주로 사용되는 용어로, 현실 세계에서 독립적으로 식별 가능한 사물이나 개념을 나타냅니다. 데이터베이스에서 엔터티는 테이블을 기반으로 데이터의 구조를 정의하는 데 사용됩니다.2.객체객체지향 프로그래밍에서 사용되는 개념으로, 속성(상태)과 메서드(동작)를 가지는 소프트웨어 개체를 나타냅니다. 클래스(Class)에 의해 정의된 구체적인 데이터 구조를 가진 개체입니다.3.인스턴스객체지향 프로그래밍에서 클래스(Class)를 기반으로 생성된 실제 데이터를 의미합니다. 클래스는 객..

SQL/SQLD 2024.07.09

#3 데이터 모델링(속성)

목차속성이란?우리가 무언가(사람, 사물)을 정의할 때 보통 여러 가지 특징들이 수식어로 붙게 되는 것을 볼 수 있다. 예를 들어 우리 사람에게는 이름, 주민번호, 전화번호 등 수식어가 붙는데 이렇게 사물이나 개념의 특징을 설명해 줄 수 있는 것들을 속성이라고 부른다.그리고 이러한 속성은 더 이상 분해가 되지 않아야 하며, 필요한 항목이어야 한다. 사람이라는 엔터티에 국적이라는 속성으로 예를 들 수 있다. 속성값각각의 객체(엔터티)가 가질 수 있는 속성들은 속성값들을 가지는데 엔터티에 속한 하나의 인스턴스를 구체적으로 나타내주는 데이터라고 볼 수 있다.속성속성값이름홍길동국적대한민국전화번호010-1234-5678 하지만 각 속성은 하나의 속성값만을 가질 수 있다. 만약 하나의 속성이 여러 개의 속성값을 갖는..

SQL/SQLD 2024.07.08

#2 데이터 모델링(엔티티)

목차엔터티란?사전 의미: '독립체'로, 그 자체로 존재하는 독립된 객체를 의미한다.데이터베이스 의미: 식별이 가능한 객체로, 현실 세계에서 식별할 수 있는 모든 개체를 의미합니다. 예를 들어, 사람, 물건, 사건 등을 엔터티로 볼 수 있다. 엔터티의 주요 특징식별 가능성: 엔터티는 고유하게 식별될 수 있어야 합니다. 각 엔터티는 하나 이상의 속성을 통해 식별됩니다. 이를 위해 주로 기본 키(Primary Key)를 사용한다.속성 (Attributes): 엔터티는 여러 속성을 가질 수 있으며, 각 속성은 엔터티의 특성을 나타냅니다. 예를 들어, '고객' 엔터티는 이름, 주소, 전화번호 등의 속성을 가질 수 있다.관계 (Relationships): 엔터티는 다른 엔터티와 관계를 맺을 수 있습니다. 예를 들어..

SQL/SQLD 2024.07.04

#1 데이터 모델링

목차모델링이란?모델링은 여러가지로 표현할 수 있다. 건축 모델링일 수도 있고 석고 모델링일 수도 있고 3D 모델링을 떠올릴 수 있다.이렇게 다양한 분야의 모델링 공통 분모를 찾아보면 공통적으로 '설계'나 '디자인', '형상'이라는 단어들이 존재한다.데이터베이스의 모델링은 '현실 세계를 단순화하여 표현하는 기법'이다. 예를 들어, 고객이 물건을 주문한다고 하자. 이상황을 도식화하면 어떻게 될가? 고객, 물건(상품), 그리고 주문하는 행위로 나눠진다.우리가 머리속으로 생각하면 매우 단순하지만 우리가 물건을 주문하는 현실 세계를 위의 그림과 같은 모델로 만듦으로써 모델링이 된다.따라서 모델링의 모델은 이처럼 현실 세계에서 일어날 수 있는 다양한 현상(일)에 대해서 일관성 있는 표기법으로 표현해 놓은 모형이라고..

SQL/SQLD 2024.07.04