선택(관계 대수)
Selection (relational algebra)관계 대수학에서는 선택(E.F.를 기준으로 제한이라고도 함)을 사용한다. Codd의 글이 SQL의 존재보다 앞서 있기 때문에 SQL의 SELECT 사용과 혼동을 피하기 위해 Codd가 통념과는 달리 1970년 논문은[1] 관계의 일부분을 나타내는 단항 연산이다.
선택 항목은 ( ) 또는 ( 로 기록되며, 여기서 다음과 같은 경우:
- a와 b는 속성 이름이다.
- θ은 집합의 이진 연산이다 ,,= ,,, >
- v는 값 상수임
- R은 관계다.
선택 ( ) {\_은 θ이 a와 b 속성 사이에 유지하는 R의 모든 튜플을 나타낸다.
선택 ( ){\ v은 속성 v와 값 v 사이에 holds이 있는 R의 모든 튜플을 나타낸다.
예를 들어, 첫 번째 테이블이 관계 Person에게 제공하는 다음 표를 고려해 보십시오. 두 번째 테이블은 ( ) {\text 34과 세 번째 표는 σ = ({{\text의 결과를 제공한다.
|
|
|
보다 공식적으로 선택 의미론은 다음과 같이 정의된다.
선택 결과는 언급하는 속성 이름이 해당 속성 이름이 해당 속성 이름이 작용하는 관계 제목에 있는 경우에만 정의된다.
일반화 선택
A generalized selection is a unary operation written as where is a propositional formula that consists of atoms as allowed in the normal selection and, in addition, the logical operators ∧ (and), ∨ (or) and (negation). 이 선택 항목은 }이(가) 보유하는 R의 모든 튜플을 선택한다.
예를 들어, 첫 번째 표에서 연령 체중 ( text}의 결과를 나타내는 다음 표를 생각해 보십시오..
|
|
공식적으로 일반화된 선택의 의미론은 다음과 같이 정의된다.
선택 결과는 언급하는 속성 이름이 해당 속성 이름이 해당 속성 이름이 작용하는 관계의 헤더에 있는 경우에만 정의된다.
일반화된 선택은 다른 기본적인 대수학 연산과 함께 표현할 수 있다. 기본 연산자를 이용한 일반화 선택 시뮬레이션은 다음 규칙에 의해 정의된다.
컴퓨터 언어
컴퓨터 언어의 경우, 어떤 진실된 표현도 단순한 비교로 제한하기보다는 선택 조건으로 허용될 것으로 예상된다.
SQL에서 선택 작업은 WHERE
의 정의. SELECT
, UPDATE
, 그리고 DELETE
그러나 선택 조건은 일반적인 두 값이 아닌 세 가지 진리 값(참, 거짓 및 알 수 없음) 중 하나를 초래할 수 있다는 점에 유의하십시오.
SQL에서 일반 선택은 다음을 사용하여 수행된다. WHERE
와의 정의. AND
, OR
또는 NOT
의 피연산자. SELECT
, UPDATE
, 그리고 DELETE
진술들
참조
- ^ Codd, E.F. (June 1970). "A Relational Model of Data for Large Shared Data Banks". Communications of the ACM. 13 (6): 377–387. doi:10.1145/362384.362685.