'''조인 join 연산''' 기호 ⨝ [[관계대수relational_algebra]] 연산 중 하나? 대충, [[테이블table]]/[[릴레이션relation]]이 여러 개 있을 때 여러 테이블에 흩어져 있는 정보 중에서 사용자가 필요한 정보만 가져와서 가상의 테이블처럼 만들어서 결과를 보여주는? nested query를 single block query로 바꾸면, 거의 대부분 '''join 연산'''을 쓰게 된다.[* KU황인준 2022-03-28 50:40] ''이건 연산 두 개로 분해 가능?'' cartesian_product를 하고, [[실렉트select]]를 한 것.[* KU황인준] > R⨝,,C,,S = σ,,C,,(R×S) <> ''아래 분류 sections 여러곳을 참고하여서 체계적이지 않음, and 겹치는 것도 존재, 나중에 다시 tree 구조로 체계적으로 분류'' = 내부조인 inner join = 내부조인inner_join https://everything2.com/title/inner+join “also sometimes called "equi-joins" or "natural joins".” ex. `SELECT * FROM a INNER JOIN b ON a.field=b.field` = 외부조인 outer join = 외부조인outer_join left outer join left_outer_join right outer join right_outer_join full outer join full_outer_join equijoin과 natural_join은, 다른 [[릴레이션relation]]에 matching하지 않는 [[튜플tuple]]들은 제외하는데, '''outer join'''은... https://everything2.com/title/outer+join ex. `SELECT * FROM a LEFT JOIN b ON a.field=b.field` = 상호조인 cross join = 상호조인 cross join ''chk: 이게 일반적인 join?'' = 자체조인 self join = 자체조인 self join = cartesian product = [[cartesian_product]] 결과의 [[차수degree]]는 (두 operand 테이블의 차수들)의 합, 결과의 [[카디널리티cardinality]]는 (두 operand 테이블의 카디널리티들)의 곱과 같다. rel. [[VG:곱집합,product_set]] = equi join = = 만으로. 이것은 superfluous한 [[속성attribute]](s)를 남긴다. 그걸 제외한 것이 natural join. (황인준) = non-equi join = = 세타 조인 theta join = equijoin이 =만으로...라면, 이것은 =,<,≤,>,≥,≠ 여섯가지 ... (더 일반적?) - 정확히 rewrite. (황인준) = 자연 조인 natural join ⨝,,N,, = [[자연조인natural_join]] equijoin에서 중복된 것을 삭제한?? chk 기호 * equijoin 후 superfluous attribute(s)를 제거하는 join. (황인준) = DB개론에서 = [[조인속성join_attribute]]을 이용해, 두 [[릴레이션relation]]을 조합하여 하나의 결과 릴레이션을 구성. join attribute란: 두 relation이 공통으로 가지고 있는 [[속성attribute]]. binary operator: (relation, relation) ↦ relation 자연 조인 natural join ⨝,,N,, 가장 많이 사용되는 조인. [[자연조인natural_join]] 세타 조인 theta join ⨝,,AθB,, 자연 조인보다 더 일반화된 조인. 표현 릴레이션1 ⨝,,AθB,, 릴레이션2 에서, AθB는 조인 조건으로, A는 릴레이션1의 [[속성attribute]]이고 B는 릴레이션2의 속성. θ는 비교연산자(>, ≥, <, ≤, =, ≠). 비교 연산이 가능하도록, A와 B는 같은 [[도메인domain]]으로 정의되어야 함. θ 연산자가 =인 경우, 특별히 동일 조인(equi-join)이라 함. [[세타조인theta_join]] 세미 조인과 외부 조인: { [[세미조인semijoin]] : ⋉ ⋊ 조인 속성으로 [[프로젝트project]]한 [[릴레이션relation]]을 이용해 조인한다. //aka semi-join semi_join [[외부조인outer_join]] 결과 릴레이션에 조인 연산에서 제외되었던 모든 tuple을 포함시킨다. left outer join ⟕ right outer join ⟖ full outer join ⟗ https://everything2.com/title/outer+join http://foldoc.org/outer+join [[https://terms.naver.com/entry.naver?docId=3431172&cid=58430&categoryId=58430&expCategoryId=58430 DB개론: 확장된 관계 대수 연산자]] [[https://terms.naver.com/entry.naver?docId=3431173&cid=58430&categoryId=58430&expCategoryId=58430 DB개론: 세미 조인]] [[https://terms.naver.com/entry.naver?docId=3431174&cid=58430&categoryId=58430&expCategoryId=58430 DB개론: 외부 조인]] outer-join으로 표현 R ⨝^^+^^ S 로 표현 } inner_join (also sometimes called "equi-joins" or "natural joins") https://everything2.com/title/inner+join http://foldoc.org/inner+join 조인검색 { 조인검색 : 여러 개의 [[테이블table]]을 연결하여 데이터를 검색하는 것. 조인검색을 하려면 테이블을 연결해주는 [[속성attribute]]이 필요하고 이 속성을 조인속성이라 함. 조인속성의 이름은 ''(테이블마다?)'' 달라도 되지만 [[도메인domain]]은 반드시 같아야 함. 일반적으로 테이블의 관계를 나타내는 [[외래키foreign_key]]를 조인속성으로 이용한다고. (이유 tbw) Ref. [[https://terms.naver.com/entry.naver?docId=3431203&cid=58430&categoryId=58430&expCategoryId=58430 DB개론: 여러 테이블에 대한 조인 검색]] } = Oracle 11g의 경우 - '예제로 배우는 ORACLE 11g' 위키북스에서 = join - https://wikidocs.net/3956 cartesian product - https://wikidocs.net/3957 이건 [[VG:곱집합,product_set]]과 마찬가지 idea. equi join - https://wikidocs.net/3958 두 테이블에 공통으로 존재하는 [[열column]]의 값이 일치되는 [[행row]]을 연결하여 결과를 생성하는. non-equi join 비등가조인 - https://wikidocs.net/3959 동일 column 없이 다른 조건을 써서. self join - https://wikidocs.net/3960 자기 자신과 조인. outer join - https://wikidocs.net/3961 조인 조건을 만족하지 않는 [[행row]]도 나타내는. 조인 조건을 만족하지 못하였어도 해당 [[행row]]을 나타내고 싶을 때 outer join을 사용. ---- Ref. [[https://terms.naver.com/entry.naver?docId=3431169&cid=58430&categoryId=58430&expCategoryId=58430 DB개론: 조인]] https://everything2.com/title/Join [[HashKr:조인]] [[WpKo:Join_(SQL)]] = https://ko.wikipedia.org/wiki/Join_(SQL) [[WpEn:Join_(SQL)]] = https://en.wikipedia.org/wiki/Join_(SQL) ... Google:조인+join Up: [[database]] > [[관계대수relational_algebra]] Up: [[관계데이터연산relationship_data_operation]] > [[관계대수relational_algebra]] 관계연산 관계연산자 relational operation // <- DB개론 보고 [[관계대수relational_algebra]] 작성시 만든것, 나중에 cleanup ---- Wikiadmin [[조인,join]] page mk? { 번역할만한 단어가 있나?? meet랑 같이... Ndict:"조인 미트" Ggl:"조인 미트" } [[집합론,set_theory]]과 비교 tbw ... [[집합,set]] [[집합연산,set_operation]] || ||set operation || ||inner join ||intersection ∩ || ||outer join ||union ∪ ||