En álgebra relacional , una selección (a veces llamada restricción en referencia al artículo de EF Codd de 1970 [1] y no , contrariamente a la creencia popular, para evitar confusión con el uso de SELECT de SQL , ya que el artículo de Codd es anterior a la existencia de SQL) es una operación unaria que denota un subconjunto de una relación.
Una selección se escribe como o dónde:
- un y b son nombres de atributo
- θ es una operación binaria en el conjunto
- v es una constante de valor
- R es una relación
La selección denota todas las tuplas de R para el que θ sostiene entre la una y la b atributo.
La selección denota todas las tuplas de R para el que θ mantiene entre el un atributo y el valor de v .
Por ejemplo, considere las siguientes tablas donde la primera tabla da la relación Persona , la segunda tabla da el resultado de y la tercera tabla da el resultado de .
|
|
|
Más formalmente, la semántica de la selección se define de la siguiente manera:
El resultado de la selección solo se define si los nombres de atributo que menciona están en el encabezado de la relación sobre la que opera.
Selección generalizada
Una selección generalizada es una operación unaria escrita como dónde es una fórmula proposicional que consta de átomos como se permite en la selección normal y, además, los operadores lógicos ∧ ( y ), ∨ ( o ) y( negación ). Esta selección selecciona todas aquellas tuplas en R para las que sostiene.
Por ejemplo, considere las siguientes tablas donde la primera tabla da la relación Persona y la segunda el resultado de.
|
|
Formalmente, la semántica de la selección generalizada se define de la siguiente manera:
El resultado de la selección solo se define si los nombres de atributo que menciona están en el encabezado de la relación sobre la que opera.
La selección generalizada se puede expresar con otras operaciones algebraicas básicas. Una simulación de selección generalizada utilizando los operadores fundamentales se define mediante las siguientes reglas:
Lenguajes informáticos
En los lenguajes informáticos se espera que se permita cualquier expresión con valor de verdad como condición de selección en lugar de restringirla a una simple comparación.
En SQL , las selecciones se realizan mediante el uso de WHERE
definiciones en SELECT
, UPDATE
, y DELETE
declaraciones, pero tenga en cuenta que la condición de selección puede resultar en cualquiera de los tres valores de verdad ( verdadero , falso y desconocidos ) en lugar de los dos habituales.
En SQL , las selecciones generales se llevan a cabo mediante el uso de WHERE
las definiciones con AND
, OR
o NOT
operandos en SELECT
, UPDATE
y DELETE
declaraciones.
Referencias
- ^ Codd, EF (junio de 1970). "Un modelo relacional de datos para grandes bancos de datos compartidos". Comunicaciones de la ACM . 13 (6): 377–387. doi : 10.1145 / 362384.362685 .