투영과 선택이란 무엇입니까?


93

투영과 선택의 차이점은 무엇입니까? 그것은 :

  • 투영-> 테이블의 열을 선택합니다. 과
  • 선택 ---> 표의 행을 선택 하시겠습니까?

그렇다면 투영과 선택은 각각 수직 및 수평 슬라이스입니까?

답변:


180

바로 그거죠.

프로젝션 은 쿼리가 반환 할 열 (또는 표현식)을 선택 하는 것을 의미 합니다.

선택어떤 행을 의미 합니다 리턴 될 합니다.

쿼리가

select a, b, c from foobar where x=3;

"a, b, c"는 투영 부분이고, "여기서 x = 3"은 선택 부분입니다.


3
실제로 명확한 설명이지만 SQL의 이러한 측면이 혼란 스럽거나 오해의 소지가 있음을 발견했습니다. SELECT절은 실제로 프로젝션 (선택이 아님)을 WHERE수행하고 실제로 선택을 수행하는 절입니다 .
flow2k

4
@ flow2k 잘 관찰되었지만 나를 비난하지 마십시오 ;-)
Erich Kitzmueller

2
@ErichKitzmueller Ha-나는 그런 의도가 없었습니다. 때때로 나는 용어에 오거나 정의 또는 구문의 미묘한 점을 받아들이면 더 잘 기억할 수 있습니다.
flow2k

13

간단히 PROJECTION 은 열 제거 또는 선택을 처리하고 SELECTION 은 행 제거 또는 선택을 처리합니다.


6

프로젝션 : 선택 절에 입력 된 것, 즉 프로젝션 아래에있는 '열 목록'또는 '*'또는 '표현식'.

* 선택 : * 우리가 해당 열에 적용하는 조건의 유형, 즉 선택에서 오는 레코드 가져 오기.

예를 들면 :

  SELECT empno,ename,dno,job from Emp 
     WHERE job='CLERK'; 

위의 쿼리에서 "empno, ename, dno, job"열은 프로젝션 아래에 있고 "where job = 'clerk'"는 선택 아래에 있습니다.


5

프로젝션과 선택은 관계형 대수학에서 두 개의 단항 연산이며 RDBMS (관계형 데이터베이스 관리 시스템)에서 실용적인 응용이 있습니다.

실제 의미에서 예 프로젝션은 테이블에서 특정 열 (속성)을 선택하는 것을 의미하고 선택은 행 (튜플)을 필터링하는 것을 의미합니다. 또한 기존 테이블의 경우 투영 및 선택을 수직 및 수평 분할 또는 필터링이라고 할 수 있습니다.

Wikipedia는 예제와 함께 이에 대한보다 공식적인 정의를 제공하며 관계형 대수에 대한 추가 읽기에 유용 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.