Realizando consultas utilizando SELECT
Veremos como realizar las consultas en una base de datos,
la misma puede ser cualquiera siempre y cuando este soportada por ADO, también
se puede realizar desde cualquier lenguaje sea ASP, PHP, Visual Basic, C++ y
todos los que soporten objetos de acceso a datos como ADO que es el mas extendido.
Definición
SELECT: Pide al motor de base de datos que devuelva
información de la base de datos como un conjunto de registros. Bajo esta definición
no nos queda nada claro, así que veamos con ejemplos concretos la aplicación
de esta definición.
Primero tenemos una base de datos con la siguiente estructura
y datos...
|
"SOCIOS" |
|
ID |
NOMBRE |
APELLIDO |
PAIS |
SEXO |
|
1 |
Juan |
Pérez |
España |
Masculino |
|
2 |
María |
Wilson |
Argentina |
Femenino |
|
3 |
Pedro |
Canale |
Colombia |
Masculino |
|
4 |
Soledad |
Tiara |
Argentina |
Femenino |
|
5 |
Marcos |
Mazuca |
Mexico |
Masculino |
Esta es la tabla con la cual trabajaremos su nombre es "Socios"
y contiene la lista de socios correspondientes a algún club u otra entidad,
siempre va a llegar el momento en que queremos realizar algún tipo de consulta,
a continuación veremos algunas de las consultas que podemos realizar...
- Seleccionar todos los socios.
- Seleccionar solo los socios femeninos.
- Seleccionar los socios masculinos con la nacionalidad
mexicana.
Seleccionar todos los socios.
"SELECT * FROM Socios"
Esta es la mínima expresión de una instrucción SELECT, primero
tenemos la palabra clave SELECT seguida de un asterisco, lo que indica este
asterisco es que seleccionamos todos los campos dado que también podemos seleccionar
solamente ciertos campos...
"SELECT Nombre, Pais FROM Socios"
Atención! Si seleccionamos algunos campos solamente
después no podremos tener acceso a los otros campos. Por ejemplo si queremos
ver los datos del campo SEXO nos dará un error dado que no lo seleccionamos.
Bueno utilizando el primer ejemplo, lo que sigue es la cláusula
FROM que indica desde que tabla vamos a obtener los datos, en este caso desde
la tabla "Socios".
Seleccionar solo los socios femeninos.
"SELECT * FROM Socios WHERE Sexo = 'Femenino'"
Lo que hemos agregado aquí es la palabra clave WHERE que
indica la condición que se debe cumplir, en este caso Sexo igual a Femenino,
entonces la sentencia SELECT traducida seria algo así..."Seleccionar
todos los campos desde la tabla Socios donde Sexo sea igual a Femenino"
y el resultado seria el siguiente...
|
"SOCIOS" |
|
ID |
NOMBRE |
APELLIDO |
PAIS |
SEXO |
2 |
María |
Wilson |
Argentina |
Femenino |
4 |
Soledad |
Tiara |
Argentina |
Femenino |
Atención! Notemos que en la consulta SELECT
Femenino va entre comillas simples dado que es un valor del tipo texto o cadena,
si utilizamos valores numéricos no hay que poner las comillas simples.
Seleccionar los socios masculinos con la nacionalidad
mexicana.
"SELECT * FROM Socios WHERE Sexo = 'Masculino' AND
Pais = 'Mexico'"
Aquí hemos realizado una consulta utilizando operadores lógicos,
la sentencia traducida quedaría así..."Seleccionar todos los campos
desde la tabla Socios donde Sexo sea igual a Masculino y el país sea Mexico"
y el resultado seria el siguiente...
|
"SOCIOS" |
|
ID |
NOMBRE |
APELLIDO |
PAIS |
SEXO |
5 |
Marcos |
Mazuca |
Mexico |
Masculino |
Ordenando Registros
Podemos ordenar los registros utilizando la cláusula ORDER
BY veamos como aplicarla y a continuación su explicación...
"SELECT * FROM Socios WHERE Sexo = 'Femenino' ORDER
BY Apellido"
Esta consulta ordena de forma ascendente (A..Z - 0..9) utilizando
el campo Apellido, para ordenar de manera descendente utilizamos DESC, veamos
el ejemplo...
"SELECT * FROM Socios WHERE Sexo = 'Femenino' ORDER
BY Apellido DESC">
También podemos ordenar por varios campos a la ves de la
siguiente forma...
"SELECT * FROM Socios WHERE Sexo = 'Femenino' ORDER
BY Apellido, Nombre"
Conclusiones
La instrucción SELECT es una de las mas utilizadas cuando
trabajamos con SQL, lo que vimos en este articulo son solo unas de las posibilidades
que tiene, mas adelante veremos otros tipos de consultas mas potentes. Saludos,
El Guru.
|