목록SQL (35)
병호의 IT새싹키우기
💡제2정규형 (2NF): 1NF를 만족하며, 모든 비기본 키 속성이 전체 기본 키에 대해 완전 함수적 종속을 가져야 합니다. 즉, 기본 키의 일부에만 종속된 속성이 없어야 합니다. 2NF를 만족하지 못하는 데이터 예제학생들이 수강하는 과목과 그 과목의 담당 교수에 대한 정보를 포함하는 테이블을 설계.여기서 pk는 {학생ID, 과목코드}의 복합 키입니다. 수강 정보 테이블위 테이블에서 '과목명'과 '담당 교수'는 과목코드에 부분적으로 종속되어 있습니다. 즉, 학생ID와는 직접 적인 관련이 없습니다. 2NF 문제 해결2NF를 만족시키기 위해 부분 종속성을 제거해야 합니다. 이를 위해 위 테이블을 분해하여 부분적 종속성을 제거할 수 있습니다.수강 정보 테이블: 학생ID, 과목코드과목 정보 테이블: 과목코드..
테이블(Relation)이 제 1정규형을 만족했다는 것은 아래 세 가지 조건를 만족했다는 것을 의미합니다. 어떤 Relation에 속한 모든 Domain이 원자값(atomic value)만으로 되어 있다.모든 attribute에 반복되는 그룹(repeating group)이 나타나지 않는다.기본 키를 사용하여 관련 데이터의 각 집합을 고유하게 식별할 수 있어야 한다. 1. 원자값이 아닌 데이터제 1정규형의 첫 번째 조건은 모든 도메인이 원자값으로 구성되어야 한다는 것원자값이 아닌 예 (수강 과목)위 표에서 '수강 과목' 필드에 여러 과목이 쉼표로 구분되어 들어가 있어, 이 필드가 원자값이 아님. 2. 반복 그룹이 있는 데이터제 1정규형의 두 번째 조건은 속성에 반복되는 그룹이 나타나지 않아야 한다는 것...
subquery란?서브쿼리(subquery)는 SQL 문장 내에서 다른 SQL 쿼리를 내포하는 구문입니다. 서브쿼리의 개념서브쿼리는 보통 소괄호 () 안에 작성되며, 메인 쿼리(main query) 또는 외부 쿼리(outer query)라고 하는 더 큰 SQL 쿼리의 일부로 존재합니다. 서브쿼리는 메인 쿼리에 의해 반환된 데이터를 기반으로 추가적인 조건을 적용하거나, 메인 쿼리의 조건을 정의하는 데 사용됩니다.문법에 형태 살펴 보기select * from reservationwhere name in( select name from customer where address ='서울' );서브쿼리를 사용하는 이유복잡성 감소: 복잡한 쿼리를 더 작고 관리하기 쉬운 부분으로 나누어 처리할 수 있습니다.재사용성:..
User 테이블 명세서Board 테이블 명세서Reply 테이블 명세서create database m_board;use m_board;create table user( id int primary key auto_increment, username varchar(100) not null unique, password varchar(255) not null, email varchar(100) not null, userRole varchar(20), createDate timestamp);-- board table, reply table create table board( id int primary key auto_increment, userId int, title varchar(100) no..
특정 색상의 상품이 있는 모든 카테고리 조회 (서브쿼리 사용할 필요 없음)예를 들어, '흰색' 상품이 있는 모든 카테고리를 조회하는 쿼리입니다.가장 비싼 상품을 가진 카테고리 찾기 (서브쿼리 사용할 필요 없음)각 카테고리 중 가장 비싼 상품을 가지고 있는 카테고리와 그 상품의 정보를 조회하는 쿼리입니다.