본문 바로가기

분류 전체보기70

SQL 기본 함수 함수 문자 함수CHR(ASCII 코드) : 총 128개의 문자를 숫자로 표현할 수 있도록 정의해 놓은 코드. SQL Server(MSSQL)의 경우 CHAR(ASCII 코드)LOWER(문자열) : 문자열을 소문자로 변환UPPER(문자열) : 문자열을 대문자로 변환LTRIM(문자열 [,특정 문자]) : 문자열의 왼쪽 공백을 제거. [ ]는 옵션으로 특정 문자를 명시해 주었을 경우 문자열을 왼쪽부터 한 글자씩 특정 문자와 비교하여 특정 문자에 포함되어 있으면 제거하고 포함되지 않았으면 멈춤. SQL Server(MSSQL)의 경우 공백 제거만 가능RTRIM(문자열 [,특정 문자]) : 문자열의 오른쪽 공백을 제거. [ ]는 옵션으로 특정 문자를 명시해 주었을 경우 문자열을 오른쪽부터 한 글자씩 특정 문자와 .. 2025. 3. 5.
SQL 기본 RDB와 SELECT 문 관계형 데이터베이스 데이터베이스용도와 목적에 맞는 데이터끼리 모아 저장하는 공간관계형 데이터베이스관계형 데이터베이스(RDB, Relational DataBase)는 관계형 데이터 모델에 기초를 둔 데이터베이스관계형 데이터베이스 관리 시스템(RDBMS, Relational DataBase Management System)은 RDB를 관리 감독하기 위한 시스템으로 잘 알려진 RDBMS에는 Oracle, SQL Server(MSSQL), MySQL, MariaDB, PostgreSQL가 있음테이블(Table)데이터는 관계형 데이터베이스의 기본 단위인 테이블(표) 형태로 저장되며, 테이블은 특정한 주제와 목적으로 만들어지는 일종의 집합행(Row)과 열(Column)로 구성되는 가장 기본적인 데이터베이스 객체로,.. 2025. 3. 4.
데이터 모델과 SQL 반정규화 반정규화(De-Normalization) 반정규화란?데이터 조회 성능을 향상하기 위해 데이터의 중복을 허용하거나 데이터를 그룹핑하는 과정조회 성능은 향상될 수 있으나 입력, 수정, 삭제 성능은 저하될 수 있으며 데이터 정합성 문제가 발생할 수 있음테이블 반정규화테이블 병합1:1 관계 테이블 병합 : 1:1 관계 테이블을 통합하여 성능 향상1:M 관계 테이블 병합 : 1:M 관계 테이블을 통합하여 성능 향상슈퍼 서브 타입 테이블 병합 : 슈퍼 서브 관계를 통합하여 성능 향상슈퍼 서브 타입 테이블 병합One to One Type : 1:1 타입으로, 슈퍼 타입과 서브 타입 테이블들을 각각 개별 테이블로 구성Plus Type : 슈퍼 타입 + 서브 타입으로, 각각의 서브 타입에 슈퍼 타입을 합하여 테이블로 구.. 2025. 3. 3.
데이터 모델과 SQL 정규화 성능 데이터 모델링성능 데이터 모델링이란?데이터베이스의 성능을 향상시키기 위해 설계 단계부터 성능과 관련된 사항들이 모델링에 반영될 수 있도록 하는 것성능 데이터 모델링 수행 시점성능 향상을 위한 비용은 프로젝트 수행에 있어 사전에 할수록 비용이 들지 않음특히 분석/설계 단계에서 데이터 모델에 성능을 고려한 데이터 모델링을 수행할 때 성능저하에 따른 재업무 비용을 최소화할 기회를 가지게 됨성능 데이터 모델링 순서데이터 모델에 맞게 정규화 수행데이터베이스의 용량 산정 수행데이터베이스에 발생하는 트랜잭션의 유형 파악데이터베이스의 성능을 고려하여 반정규화 수행PK/FK 등을 조정하여 인덱스를 반영함으로써 성능 향상데이터 모델의 성능 검증정규화(Normalization)정규화란?데이터 정합성(데이터의 정확성과 .. 2025. 3. 2.
데이터 모델링의 이해 관계와 식별자 관계(Relationship) 관계란?두 개 이상의 엔티티 간 연관성을 의미하며, 어떠한 연관성이 있는지 타입을 분류하여 존재 관계와 행위 관계로 나눌 수 있음존재 관계엔티티 간의 연관성이 존재 자체로 성립되는 관계. 예를 들어, 엄마와 아기, 직원과 부서, 학생과 학과행위 관계특정한 행위나 이벤트를 통해 연관성이 생기는 관계. 예를 들어, 회원과 주문, 학생과 출석부표기법관계명(Membership) : 관계의 이름, 명확한 문장으로 표현해야 하며 현재형이어야 함. 예를 들어, 학생은 학과에 소속된다관계차수(Cardinality) : 관계의 기수성(참여하는 수), 일반적으로 1:1, 1:M, M:N 형식으로 구분. 예를 들어, 한 학생은 여러 수업을 들을 수 있고 하나의 수업은 여러 학생을 수용할 수 있.. 2025. 3. 1.
데이터 모델링의 이해 엔티티와 속성 엔티티(Entity) 엔티티란?식별이 가능한 객체로, 시스템 내에서 고유한 존재로 인식되는 개체임. 데이터베이스에서 각 엔티티는 특정 속성을 갖고 있으며, 그 자체로 구분할 수 있는 고유성을 가짐엔티티의 특징업무에 쓰이는 정보 : 조직 내에서 업무 처리를 위해 필요한 정보를 제공함. 예를 들어, 고객, 제품, 주문유니크함을 보장할 수 있는 식별자 : 각 엔티티는 고유한 식별자를 가지고 있어 중복 없이 구분할 수 있음. 예를 들어, 회원 ID, 주문 번호두 개 이상의 인스턴스 : 엔티티는 단 하나의 인스턴스로 존재하지 않으며 여러 인스턴스를 가질 수 있음. 예를 들어, 회원반드시 속성이 있음 : 엔티티는 특정 속성을 가지며 이를 통해 엔티티를 정의함. 예를 들어, 고객다른 엔티티와 한 개 이상의 관계 : .. 2025. 2. 28.