web-dev-qa-db-fra.com

Que sont la projection et la sélection?

Quelle est la différence entre la projection et la sélection? Est-ce:

  • Projection -> pour sélectionner les colonnes du tableau; et
  • Sélection ---> pour sélectionner les lignes du tableau?

La projection et la sélection sont-elles respectivement des tranches verticales et horizontales?

69
prabhahar

Exactement.

Projection signifie choisir quelles colonnes (ou expressions) la requête doit renvoyer.

Sélection signifie quelles lignes doivent être retournées.

si la requête est

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

alors "a, b, c" est la partie de projection, "où x = 3" la partie de sélection.

138
Erich Kitzmueller

Simplement PROJECTION traite de l'élimination ou de la sélection des colonnes, tandis que SÉLECTION traite de l'élimination ou de la sélection des lignes.

9
Harimohan Pandey

Projection: ce qui est entré dans la clause select, c'est-à-dire 'liste de colonnes' ou '*' ou 'expressions' qui devient sous projection.

* sélection: * quel type de conditions nous appliquons sur ces colonnes, c'est-à-dire obtenir les enregistrements qui entrent dans la sélection.

Par exemple:

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

dans la requête ci-dessus, les colonnes "empno, ename, dno, job" celles-ci relèvent de la projection, "où job = 'clerk'" est sélectionné

5
AlluriReddy

Les projections et les sélections sont deux opérations unaires en algèbre relationnelle et ont des applications pratiques dans les SGBDR (systèmes de gestion de bases de données relationnelles).

En pratique, oui Projection signifie sélectionner des colonnes (attributs) spécifiques dans une table et Sélection signifie filtrer les lignes (tuples). De plus, pour une table conventionnelle, la projection et la sélection peuvent être appelées découpage ou filtrage vertical et horizontal.

Wikipedia fournit des définitions plus formelles de ceux-ci avec des exemples et ils peuvent être bons pour une lecture plus approfondie sur l'algèbre relationnelle:

1
Arnab