relacional online examples convertir sql database relational-algebra

sql - online - relational algebra database



¿Qué son proyección y selección? (4)

¿Cuál es la diferencia entre proyección y selección? Lo es:

  • Proyección -> para seleccionar las columnas de la tabla; y
  • Selección ---> para seleccionar las filas de la tabla?

Entonces, ¿la proyección y la selección de corte vertical y horizontal, respectivamente?


Exactamente.

Proyección significa elegir qué columnas (o expresiones) devolverá la consulta.

La selección significa qué filas se deben devolver.

si la consulta es

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

entonces "a, b, c" es la parte de proyección, "donde x = 3" la parte de selección.


Las proyecciones y las selecciones son dos operaciones unarias en álgebra relacional y tienen aplicaciones prácticas en RDBMS (sistemas de administración de bases de datos relacionales).

En sentido práctico, sí Proyección significa seleccionar columnas específicas (atributos) de una tabla y Selección significa filtrar filas (tuplas). Además, para una tabla convencional, Projection and Selection puede denominarse slicing o filtración vertical y horizontal.

Wikipedia proporciona definiciones más formales de estos con ejemplos y pueden ser útiles para lecturas adicionales sobre álgebra relacional:


Simplemente PROJECTION se ocupa de la eliminación o selección de columnas, mientras que SELECTION se ocupa de la eliminación o selección de filas.


Proyección: lo que alguna vez se haya escrito en la cláusula de selección, es decir, ''lista de columnas'' o ''*'' o ''expresiones'' que se convierte en proyección.

* selección: * qué tipo de condiciones estamos aplicando en esas columnas, es decir, obteniendo los registros que están bajo selección.

Por ejemplo:

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

en la consulta anterior, las columnas "empno, esame, dno, job" están bajo proyección, "donde job = ''clerk''" está bajo selección