Sei sulla pagina 1di 18

S.Q.L.

Structured Query Language

Introducin
Este verstil lenguaje de programacin, permite
la comunicacin con el sistema de gestin de
base de datos. Fue desarrollado sobre un protipo
de gestor de base de datos relacionado
denominado SYSTEM R y diseado por IBM a
mediados de los aos setenta. En 1979 Oracle
Corporation present la primera implementacin
comercial de SQL; y en 1986 la ANSI (American
National Standard Institute) lo adopta como
lenguaje estndar para la gestin de bases de
datos relacionales.

Introducin
SQL es tan conocido en base de datos que
muchos lenguajes de programacin incorporan
sentencias SQL, como parte de su repertorio; tal
es el caso de Visual Basic, para acceder a bases
de datos relacionales.
Entre sus principales caractersticas podemos
destacar que es un lenguaje para todo tipo de
usuarios: administradores, desarrolladores y
usuarios normales.
El usuario especfica qu quiere? de una forma
lgica sencilla, que le permite construir consultas
que devuelvan una fila, un grupo de filas, datos o
campos de una tabla, segn su necesidad.

La sentencia SELECT
La sentencia SELECT es sin duda la primera
estructura de S.Q.L. que el usuario necesita para
comprender el manejo de este importante
lenguaje de consulta.
Esta sentencia se clasifica dentro de las llamadas
D.M.L. (Data Manipulation Language), las cuales
permiten el acceso a los datos contenidos en las
distintas tablas que conforman una base de datos
relacional.

La sentencia SELECT
Sintaxis: Se conoce como sintaxis a la forma en
que debe estructurarse una sentencia o comando
a fin de que el Sistema Gestor de Base de Datos
(SGBR) la pueda interpretar y ejecutar.
En el caso de la sentencia SELECT se tiene la
siguiente sintaxis:
SELECT campo1, campo2, campo3
FROM Tabla 1, tabla 2, tabla 3
WHERE Condicin
La primera expresin define los campos que se
desean extraer de la tabla, la segunda define el
origen de esos campos, es decir el nombre de la
Tabla(s), y la tercera expresin indica la condicin
o criterio de recuperacin.

La sentencia SELECT
Veamos un ejemplo sencillo, supongamos que
estamos realizando una serie de consultas a
algunas tablas de la base de datos de prueba
Neptuno.mdb (1)

Ejercicio 1

Para la tabla Pedidos disee una consulta que muestre:

El Id de pedido, cliente, y pas de destino.


La sentencia SELECT, se estructura de la siguiente
forma:
SELECT IdPedido, IdCliente,
PasDestinatario
FROM Pedidos;

(1) Para efectos del curso se utilizar como SGBR, el facilitado por ms-Access 2007
de office

La sentencia SELECT
El anlisis de esta sencilla sentencia nos explica
algunos elementos bsicos de las consultas en SQL:
1.

Los nombres de los campos de la tabla deben digitarse


exactamente como aparecen en la estructura de la tabla,
cualquier modificacin o escritura incorrecta ocasionar que el
sistema no recupere adecuadamente los datos de la consulta, o
bien no la realice del todo.

2.

Toda sentencia SQL, termina con un signo punto y coma (;). En


la mayora de los SGBR este smbolo es agregado por defecto al
grabar la sentencia.

3.

La clasula WHERE (condicin) no es requerida cuando lo que


se solicita es un listado general del contenido de la tabla.

4.

An cuando para efectos de exposicin las clusulas fueron


escritas en mayscula, este requisito no es indispensable.

La sentencia SELECT
Ejercicio 2
Siempre para la tabla de Pedidos, disee una consulta que
recupere El empleado, cargo por envo y forma de envo
La sentencia SELECT sera entonces:
SELECT IdEmpleado, Cargo, FormaEnvo
FROM Pedidos;

La sentencia SELECT
consultas con criterios simples
Veamos ahora un consulta con sujeta a una condicin
(criterio) sencillo:
Ejercicio 3
Para la tabla Pedidos disee una consulta que muestre: El
Id de pedido, cliente, cargo por envo y forma de envo,
enviados a Alemania
La sentencia SELECT resultante sera:
SELECT IdPedido, IdCliente, Cargo,
FormaEnvo
FROM Pedidos
WHERE PasDestinatario="Alemania";

La sentencia SELECT
consultas con criterios simples
Observe que diferente a la primera sentencia estudiada, lo
que se requiere ahora no son todos los registros de la tabla,
sino slo aquellos cuyo pas de destino sea Alemania.
Adicionalmente podemos destacar lo siguiente:
1.
El uso de un operador de comparacin como el = el cual
permite completar la condicin.
2. Cuando lo que se requiere ubicar en un campo en
particular es una hilera de caracteres (texto) la misma debe
encerrarse entre comillas dobles, esta norma es particular no
slo de SQL, sino de una gran variedad de lenguajes de
programacin y aplicaciones,
como COBOL, VBA, C++, etc.
3. El uso de una condicin no requiere que el campo
particular que se refiere la misma se presente en la consulta,
por ejemplo en este caso an cuando la condicin se refiere
al pas de destino, el mismo no fue seleccionado para
desplegarse en la consulta.

La sentencia SELECT
consultas con criterios simples
Veamos ahora otras consultas con criterios simples siempre para la
tabla Pedidos:
Ejercicio 4.
El Id de pedido, cliente, cargo por envo y forma de envo, enviados a
Alemania, Suiza o Francia.
SELECT IdPedido, IdCliente, Cargo, FormaEnvo
FROM Pedidos
WHERE PasDestinatario="Alemania" or
PasDestinatario="Suiza" or PasDestinatario="Francia";

Uso de clasulas
Las clasulas son pequeas instrucciones dentro
del comando SELECT, que ejecutan el mismo de
un modo particular, seguidamente se listan
algunas de ellas y su significado:
ORDER BY (DESC/ASC): Ordena la consulta por un
campo o campos especficos, ya sea descendente
o ascendente.
DISTINCT: Slo recupera filas de un campo que
son distintas, es decir la primera coincidencia del
valor en el campo, en caso de que esta aparezca
varias veces.

Uso de clasulas
IN (NOT IN): Permite comprobar si una expresin
pertenece o no pertenece a un conjunto de
valores
BETWEEN (NOT BETWEEN): permite comprobar si
un valor est comprendido o no dentro de un
rango de valores.
LIKE: Permite extraer registros cuyo valor
contenga una porcin de la cadena de caracteres
indicadas. Como por ejemplo buscar todos los
registros cuyo pas destinario empiece por la letra
A

La sentencia SELECT
consultas con criterios simples
Ejercicio 5.
El Id de pedido, cliente, cargo por envo y forma de envo, enviados a
Alemania, Suiza y Francia y cuyos cargos por envo sean de entre 40
y 100 dlares
SELECT IdPedido, IdCliente, Cargo, FormaEnvo
FROM Pedidos
WHERE (PasDestinatario="Alemania" or
PasDestinatario="Suiza" or PasDestinatario="Francia") and
Cargo>=40 and Cargo<=100
ORDER BY PasDestinatario, Cargo DESC;

La sentencia SELECT
consultas con criterios simples
Ejercicio 5. Clusulas IN y BETWEEN
El Id de pedido, cliente, cargo por envo y forma de envo, enviados a
Alemania, Suiza y Francia y cuyos cargos por envo sean de entre 40
y 100 dlares
SELECT IdPedido, IdCliente, Cargo, FormaEnvo
FROM Pedidos
WHERE (PasDestinatario IN ("Alemania, "Suiza, "Francia")) and
Cargo BETWEEN 40 and 100
ORDER BY PasDestinatario, Cargo DESC;

La sentencia SELECT
uso de operadores

Las sentencias anteriores tambin ejemplifican el uso de


operadores en el diseo de la condicin WHERE lo cual
permite que se puedan visualizar datos en cualquier
combinacin imaginable; dichos operadores pueden ser
aritmticos, de comparacin y lgicos:
OPERADORES ARITMETICOS
+ Suma
-

Resta

Multiplicacin

Divisin

^ Exponenciacin

La sentencia SELECT
uso de operadores
Las sentencias anteriores tambin ejemplifican el uso de
operadores en el diseo de la condicin WHERE lo cual
permite que se puedan visualizar datos en cualquier
combinacin imaginable; dichos operadores pueden ser
aritmticos, de comparacin y lgicos:
OPERADORES DE COMPARACION
=

Igual

>

Mayor que

>=

Mayor o igual que

<

Menor que

<=

Menor o igual que

<>

Diferente de

La sentencia SELECT
uso de operadores

Las sentencias anteriores tambin ejemplifican el uso de


operadores en el diseo de la condicin WHERE lo cual
permite que se puedan visualizar datos en cualquier
combinacin imaginable; dichos operadores pueden ser
aritmticos, de comparacin y lgicos:
OPERADORES LOGICOS
AN
D

Se utiliza cuando deben cumplirse dos


condiciones al mismo tiempo

OR

Se utiliza cuando deben cumplirse una de


dos condiciones.

NO
T

Se utiliza cuando el valor buscado no est


contenido en la condicin

Potrebbero piacerti anche