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
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