Что такое проекция и выбор? - PullRequest
65 голосов
/ 23 июня 2009

В чем разница между проекцией и выбором? Это:

  • Проекция -> для выбора столбцов таблицы; и
  • Выбор ---> чтобы выбрать строки таблицы?

Так что проекция и выбор вертикальной и горизонтальной нарезки соответственно?

Ответы [ 4 ]

134 голосов
/ 23 июня 2009

Точно.

Проекция означает выбор , какие столбцы (или выражения) должен возвращать запрос.

Выбор означает , какие строки должны быть возвращены.

если запрос

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

тогда «a, b, c» - это часть проекции, «где x = 3» - часть выбора.

9 голосов
/ 22 февраля 2017

Просто ПРОЕКЦИЯ имеет дело с удалением или выбором столбцов, в то время как ВЫБОР имеет дело с удалением или выбором строк.

5 голосов
/ 24 апреля 2011

Проекция: то, что когда-либо вводилось в предложении выбора, т. Е. «Список столбцов» или «*» или «выражения», которые становятся проецируемыми.

* выбор: * какие типы условий мы применяем к этим столбцам, т.е. получение записей, которые попадают под выбор.

Например:

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

в вышеприведенном запросе столбцы «empno, ename, dno, job», которые попадают под проекцию, «где job = 'clerk'», выбираются

1 голос
/ 08 декабря 2017

Проекции и выборки являются двумя унарными операциями в реляционной алгебре и имеют практическое применение в RDBMS (системах управления реляционными базами данных).

В практическом смысле да, «Проекция» означает выбор определенных столбцов (атрибутов) из таблицы, а «Выбор» означает фильтрацию строк (кортежей). Кроме того, для обычной таблицы проекция и выбор можно назвать вертикальной и горизонтальной нарезкой или фильтрацией.

Википедия предоставляет более формальные определения их с примерами, и они могут быть полезны для дальнейшего чтения по реляционной алгебре:

...