본문 바로가기

분류 전체보기102

[데이터베이스설계] 3-1 기본 쿼리 구조, select절 기본 쿼리 구조select 결과로 뽑아볼 컬럼들을 열거from 테이블이 복수 개 열거될 수 있음 (-> 카티션곱해서 하나가 될 것임) 투플을 제공where 조건                                           (-> 생략 시 true가 됨) SQL 쿼리의 결과는 relation, 테이블(중복허용)  //sql 이름들은 대소문자 구분 안함. Case insensitiveselect절Select 는 PROJECTION π와 같은 역할 함 select distinct 컬럼이름 => 중복제거select all 컬럼이름 => 중복허용  (디폴트가 all임) select * => 모든 컬럼들 select ‘437’ => 컬럼(attribute)는 from 절이 없는 상수(literal)일.. 2024. 11. 20.
[데이터베이스설계] 2-10 활용 문제들 Q) find the ID of each borrower who has a loan in branch Downtown=> π ID (σ branch_name=”Downtown” ( borrower ⨝ loan ) )=> π ID (σ branch_name=”Downtown” ( borrower ⨝ borrower.loan_number = loan.loan_number loan ) )-> 이건 loan이랑 borrower 테이블만 쓰면 됐음 Q) find the customer_name of each borrower who has a loan in branch Perridge=> π customer_name (σ branch_name=”Perridge” ( customer ⨝ borrower ⨝ loan .. 2024. 11. 19.
[데이터베이스설계] 2-9 세타조인, 자연조인, 디비전 연산자 ÷ 세타조인r ⨝ A θ D s = r ⨝ θ s // A는 r 릴레이션의 컬럼, D는 s 릴레이션의 컬럼자연조인r ⨝ s = π r . A, B, C, D (r ⨝ A = D s)- 컬럼명 같은 컬럼 간의 equi-join- 중복 제거함. (같은 컬럼이니까 하나를 결과에서 버린다 // ABCAD -> ABCD)- 세타 자리에 조건이 붙지 않고, 암시적으로 있다-   instructor ⨝ teaches                     (여긴 중복 컬럼이 제거됨)= instructor ⨝ instructor.id = teaches.id teaches      (여긴 중복 컬럼에 이름이 붙음)= σ instructor.id = teaches.id ( instructor x teaches )  (여긴 중복 .. 2024. 11. 18.