데이터 모델링의 이해모델링의 개념현실 세계의 비즈니스 프로세스와 데이터 요구 사항을 추상적이고 구조화된 형태로 표현하는 과정. 데이터베이스의 구조와 관계를 정의하며, 이를 통해 데이터의 저장, 조작, 관리 방법을 명확하게 정의한다. 모델링의 특징단순화(Simplification): 현실을 단순화하여 핵심 요소에 집중하고 불필요한 세부 사항을 제거. 단순화를 통해 복잡한 현실 세계를 이해하고 표현하기 쉬워진다.추상화(Abstraction): 현실세계를 일정한 형식에 맞추어 간략하게 대략적으로 표현하는 과정. 다양한 현상을 일정한 양식인 표기법에 따라 표현한다.명확화(Clarity): 대상에 대한 애매모호함을 최대한 제거하고 정확하게 현상을 기술하는 과정. 명확화를 통해 모델을 이해하는 이들의 의사소통을 원..
데이터 모델링의 이해관계(Relationship)?엔터티 내의 인스턴스들 간 서로 논리적인 연관성이 있는 상태. 분류 - 존재/행위존재에 의한 관계: 예시. 직원 --- 부서 (소속되다/보유하다)행위에 의한 관계: 예시. 고객 --- 상품 (주문하다/주문되다)더보기ERD(Entity Relationship Diagram)는 존재/행위 등 관계를 똑같이 표시한다. → 간략하게 설명하면, 엔터티 사이의 관계를 그림으로 표현하는 것을 의미한다.UML 클래스다이어그램 → 연관관계(존재)는 실선으로 표기 / 의존관계(행위)는 점선으로 표시. 표시 방법표기하는 방식에 따라 IE와 Barker 표기법으로 구분한다. 보통 IE를 쓰지만 차이점을 구분해야 한다. 관계명(Membership), 관계차수(Cardinalit..
SQLD 자격증을 준비했을 때 공부했던 이론 정리.SQLD데이터 베이스란 무엇인가?여러 데이터들을 모아 통합적으로 관리하는 기술. 여러 사람들이 함께 사용하고 공유한다! 데이터 베이스가 없었을 때는 각 사람들이 전부 데이터를 지니고 있었고, 데이터베이스가 출시되면서 데이터를 한 곳에 모아 저장하고 공유할 수 있게 되었다. SQLD에서는 데이터 베이스에서 데이터를 조회하고 조작하는 능력을 공부함에 목적을 지니고 있다. 데이터 모델이란?현실 세계의 대상을 추상화 단순화 명확화 하여 데이터 베이스로 표현하는 것. 데이터 모델링 예시.1) 집을 만들자! → 요구 사항 접수2) 단순한 설계도 → 개념적 데이터 모델링(엔터티, 관계, 속성...)3) 좀 더 상세한 설계도 → 논리적 데이터 모델링4) 실제로 구축..
문법SUBQUERY연산이 한 번에 끝나면 참 좋은데 아닐 때가 많다. 문자를 변경한 다음,.. 숫자 연산을 하고 그 결과로 또 연산을 해야할 때... 너무 긴 쿼리문보다는 조금 더 효율적이고 알아보기 쉽게 Subquery를 사용해보자! 언제 사용할까?→ 여러번의 연산을 수행해야 할 때. → 조건문에 연산 결과를 사용해야 할 때. → 조건에 Query 결과를 사용하고 싶을 때. 기본 구조Sub 라는 명칭에서 알 수 있듯이, Query안에 sub로 들어간 구문이라고 생각하면 쉽다.select column1, special_columnfrom ( /* subquery */ select column1, column2 special_column from table1 ) Subquery_name 예시. 음식점의 총..
문법 문자 포맷이 다를 경우, SQL로 가공하기 데이터를 조회하다보면, Query 결과를 그대로 이용하지 못하는 경우가 발생한다. 그럴 때는 어떻게 해야 할까? 특정 문자를 다른 문자로 바꾸기 REPLACE(바꿀 컬럼, 현재 값, 바꿀 값) SELECT addr "원래 주소", REPLACE(addr , '문곡리', '문가리') "바뀐 주소"FROM food_orders fo where addr LIKE '%문곡리%' 원하는 문자만 남기기 SUBSTR(조회 할 컬럼, 시작 위치, 글자 수) SELECT addr "원래 주소", SUBSTR(addr, 1, 2) "특별시"FROM food_orders fo WHERE addr LIKE '%서울특별시%' 여러 컬럼의 문자를 합치기: 원하..
문법숫자 연산SELECT food_preparation_time, delivery_time, food_preparation_time + delivery_time as total_timeFROM food_orders일반적인 사칙연산과 같이 sql에서도 + - * / 을 이용하여 숫자 연산이 가능하다. 단, 사용하려는 쿼리가 숫자 형식인지 반드시 확인하고 사용해야 한다. SUMSELECT SUM(food_preparation_time) total_food_preparation_timeFROM food_orders해당 쿼리 내 데이터를 전부 더한다. AVGSELECT AVG(age) as average_of_age FROM customers c 해당 쿼리 내 데이터의 평균값. COUNTS..