Cobol en español
  Página de Inicio Recomiéndala Contáctame Usuarios en Linea
11
     Crea Una cuenta  
Video 1
Video 2
Video 3

Si te ha servido la web
o te han gustado los videos, colabora haciendo click en el botón.

MANUALES
TEMATICOS
BASES DE DATOS
COBOL / WINDOWS
COBOL / UNIX
HISTORIA /DOCS
 
BUSCADOR
PROGRAMANDO-Dos
TRUCOS
AÑO 2.000
TEORIA POWCOB-3
PROG. POWCOB-3
TEORIA POWCOB-5
PROG. POWCOB-5
OCX-ESCOBOL
RUTINAS/MANUALES
OCX / JUEGOS
HERRAMIENTAS
COMPILADORES
ENCUESTAS
ENLACES
FOROS
TOP 10

CHAT   Usuarios: 0
Bases de Datos
TEMARIOModelos
Tablas, Columnas, Filas
Normalización
Introducción a SQL
Sentencias SQL
Ejemplos de Select

Sentencias SQL

página(s) : 1/2
(2494 palabras totales en este texto)
(36565 Lecturas)   Versión Imprimible



S Q L 
(Structured Query Language
Lenguaje de consulta estructurado).


Sentencias.

SELECT [ALL | DISTICT] lista_selección
FROM [nombre_tabla1 | nombre_vista1 | nombre_correlación1], ... 
[WHERE condición_búsqueda
[[GROUP BY [nombre_columna | número_columna]] 
[HAVING condición_búsqueda
[[INTERSECT | MINUS | UNION | ALL] sentencia_select
[[ORDER BY nombre_columna | número_columna]] [ASC | DESC
[FOR UPDATE OF mombre_columna, ...]

Descripción:

Lleva a cabo las operaciones relacionales, selección, proyección y unión (join) para crear una tabla lógica a partir de otras tablas o vistas. Los elementos de la lista_selección identifican las columnas de cada tabla que serán proyectadas en la tabla que está siendo formada. En la cláusula FROM se identifican las tablas que serán unidas, y en la cláusula WHERE se identifica el criterio de unión, así como las filas que serán seleccionadas.

La palabra clave DISTINCT indica que si existen filas idénticas, sólo una de ellas será incluida.

Esta sentencia puede ejecutarse de forma interactiva o inmersa dentro de un programa de aplicación como parte de una sentencia DECLARE CURSOR o INSERT.

Opcionalmente, se puede indicar un nombre_correlación para cada nombre de la tabla como un alias en lugar del nombre completo de la tabla, al cualificar los nombres de las columnas dentro de la lista_selección o dentro de la cláusula WHERE y sus subcláusulas. Si se une una tabla o una vista consigo misma, se deben utilizar los nombres de correlación para identificar con claridad la copia de la tabla o vista a la que hacemos referencia en la lista_selección, en el criterio de unión o el criterio de selección.

Si se especifica más de una tabla o vista en la cláusula FROM de una sentencia SELECT o una subcláusula subselect, el sistema SQL construye el producto cartesiano de todas las tablas o vistas. El sistema devuelve las filas que cumplen los criterios de selección y unión especificados en la cláusula WHERE.

Para la nomenclatura de nombre_tabla1 o nombre_vista1 válidos hay que consultar la documentación de cada fabricante.

Un nombre_columna dentro de la cláusula GROUP BY puede hacer referencia a cualquier columna de cualquier tabla especificada en la cláusula FROM, aún en el caso de que la columna no aparezca en la lista_selección.

Se utiliza número_columna dentro de la cláusula GROUP BY para hacer referencia a una columna sin nombre, como por ejemplo una expresión, dentro de la lista_selección.

Si la cláusula GROUP BY está precedida de una cláusula WHERE, el sistema forma grupos de las filas seleccionadas después de la aplicación de la cláusula WHERE. En la mayoría de las implementaciones, el orden en que se especifican las cláusulas WHERE y GROUP BY es significativo.

Cuando se incluye una cláusula GROUP BY, todas las columnas de la lista_selección deben ser funciones de columna (AVG, COUNT, MAX, MIN ó SUM) o nombre_columna especificados en la cláusula GROUP BY.

En la mayoría de las implementaciones, no se pueden utilizar las cláusulas GROUP BY o HAVING dentro de una sentencia SELECT o de una cláusula subselect si la sentencia SELECT o la cláusula subselect contienen una cláusula FROM que hace referencia a una vista definida, utilizando las cláusulas GROUP BY o HAVING.

Si se utiliza una cláusula HAVING pero no se incluye una cláusula GROUP BY, todas las columnas de lista_selección deben formarse utilizando funciones de columna (AVG, COUNT, MAX, MIN, SUM).

Si se incluye una cláusula GROUP BY precediendo a la cláusula HAVING, la condición_búsqueda de la cláusula HAVING se aplica a cada uno de los grupos formados por tener los mismos valores en las columnas especificadas. Si no se incluye una cláusula GROUP BY, la condición_búsqueda de la cláusula HAVING se aplica a toda la tabla lógica definida en la sentencia SELECT.

En algunas implementaciones, el sistema aplica la cláusula HAVING a los resultados de las cláusulas inmediatamente precedentes. Esto significa que:

SELECT ... WHERE ... HAVING ... GROUP BY

Se procesa de forma diferente a:

SELECT ... WHERE ... GROUP BY ... HAVING

En otras implementaciones, el sistema siempre aplica la cláusula HAVING a los resultados de cualquier GROUP BY presente, sin tener en cuenta el orden de las cláusulas.

Un nombre_columna dentro de la cláusula ORDER BY puede ser ambiguo porque el mismo nombre puede aparecer más de una vez en la lista_selección, o bien columnas con diferentes nombres pueden aparecer en la misma posición al utilizar una operación INTERSECT, MINUS, o UNION, las cuales hacen que los nombres de las columnas resultado queden indefinidos. Si el nombre_columna es ambiguo, se debe usar un número_columna relativo dentro de la cláusula ORDER BY.

Se pueden especificar varias columnas dentro de la cláusula ORDER BY. El resultado se ordena en primer lugar según el primer nombre_columna o número_columna. Si existen filas en las que son iguales los valores de esa columna, se ordenan según el siguiente nombre_columna o número_columna que aparece en la lista de la cláusula ORDER BY.

Se puede especificar un orden ascendente (ASC) o descendente (DESC) para cada columna. Si no se especifica ninguno, se asume ASC.

A menos que se utilice una cláusula ORDER BY dentro de una sentencia SELECT, en la mayoría de las implementaciones queda indefinida la secuencia de las filas devueltas, ahora bien, si la primera nombre_columna de lista_selección es clave o índice de la tabla, esta aparecerá ordenada por por este nombre_columna.

Funciones asociadas a los nombre_columna de la cláusula SELECT:

AVG([[ALL] expresión | DISTINCT nombre_columna])


En una tabla lógica definida por una sentencia SELECT o una cláusula subselect, crea una columna cuyo valor es el promedio numérico de los valores de la expresión o del nombre_columna especificado. Se puede utilizar la cláusula GROUP BY para crear el promedio de cada grupo de filas seleccionadas en las tablas o vistas subyacentes.

   Inicio de Página    | Siguiente (2/2)
Sitio desarrollado con PHP-Nuke. Todos los Derechos Reservados.
PHP-Nuke es un Software Libre realizado con licencia GNU/GPL.
Página creada en Junio de 1.998, con el proposito de difundir el lenguaje Cobol en nuestra lengua.
Andres Montes [98/11]