24.04.2013 Views

PRÁCTICAS DE BASES DE DATOS I - Universidad de Jaén

PRÁCTICAS DE BASES DE DATOS I - Universidad de Jaén

PRÁCTICAS DE BASES DE DATOS I - Universidad de Jaén

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Programación <strong>de</strong> Bases <strong>de</strong> Datos Oracle SQL<br />

6. Consultas sobre la base <strong>de</strong> datos<br />

En este apartado se va a estudiar el comando SELECT <strong>de</strong> SQL. Se pue<strong>de</strong> <strong>de</strong>cir que SELECT es el<br />

comando principal <strong>de</strong>l SQL, ya que tiene como objetivo prioritario el obtener la información precisa<br />

<strong>de</strong> la base <strong>de</strong> datos. Esta información se obtendrá <strong>de</strong> una o más tablas o vistas.<br />

El comando SELECT, a<strong>de</strong>más, se utiliza <strong>de</strong>ntro <strong>de</strong> otros comandos, como por ejemplo en CREATE<br />

TABLE, INSERT, UPDATE, ...<br />

6.1. Conceptos básicos relativos al comando<br />

SELECT<br />

La sintaxis fundamental <strong>de</strong>l comando SELECT es la siguiente:<br />

SELECT [ALL, DISTINCT]{[*|tabla.*],expresión[,expresión,...]}<br />

FROM tabla [, tabla, ...]<br />

[WHERE condición]<br />

[OR<strong>DE</strong>R BY {expresión | posición} [ASC | <strong>DE</strong>SC]<br />

[expresión | posición} [ASC | <strong>DE</strong>SC] , ...]]<br />

[GROUP BY expresión [, expresión, ...]]<br />

[HAVING condición];<br />

Las distintas opciones tienen el siguiente significado:<br />

• ALL: significa que se <strong>de</strong>volverán todas las tuplas que satisfagan las distintas condiciones, esta<br />

opción es la que se toma por <strong>de</strong>fecto.<br />

• DISTINCT: significa que se <strong>de</strong>volverán valores o conjuntos <strong>de</strong> valores únicos, es <strong>de</strong>cir, no<br />

repetidos.<br />

• *: indica que se realizará la proyección por todos los atributos <strong>de</strong> la/s tabla/s o vista/s indicadas<br />

en la cláusula FROM. Si se quiere que sólo se proyecte por los atributos <strong>de</strong> una tabla se utiliza<br />

tabla.*.<br />

• expresión: se pue<strong>de</strong> sustituir por:<br />

• nombre <strong>de</strong> un atributo<br />

• expresión conteniendo atributos y/o funciones.<br />

Si en el listado <strong>de</strong> la consulta <strong>de</strong>be aparecer un nombre distinto al <strong>de</strong>l atributo o al <strong>de</strong> la expresión<br />

se pue<strong>de</strong> utilizar un ALIAS, que consiste en una ca<strong>de</strong>na <strong>de</strong> caracteres encerrada entre comillas<br />

dobles y situada junto a la expresión que sustituirá en el listado <strong>de</strong> la consulta.<br />

• Otro tipo <strong>de</strong> alias es el que se utiliza para las tablas en la cláusula FROM. Estos alias se ponen<br />

junto al nombre <strong>de</strong> la tabla y se pue<strong>de</strong>n utilizar en cualquier punto <strong>de</strong>l comando SELECT<br />

sustituyendo así al nombre <strong>de</strong> la tabla.<br />

• Las condiciones <strong>de</strong> las cláusulas WHERE y HAVING son cualquiera <strong>de</strong> las vistas en el apartado 3<br />

<strong>de</strong> este capítulo (expresiones que <strong>de</strong>vuelven verda<strong>de</strong>ro o falso), a<strong>de</strong>más <strong>de</strong> algunas nuevas que<br />

se verán en el siguiente apartado.<br />

<strong>Universidad</strong> <strong>de</strong> <strong>Jaén</strong> 18

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!