4to “B”
Recuperar algunos registros (where)
Existe una cláusula, "where" con la cual podemos especificar condiciones para una consulta "select". Es decir, podemos recuperar algunos registros, sólo los que cumplan con ciertas condiciones indicadas con la cláusula "where". Por ejemplo, queremos ver el usuario cuyo nombre es "Marcelo", para ello utilizamos "where" y luego de ella, la condición:
select nombre, clave
from usuarios
where nombre='Marcelo';
La sintaxis básica y general es la siguiente:
select NOMBRECAMPO1, ..., NOMBRECAMPOn
from NOMBRETABLA
where CONDICION;
Para las condiciones se utilizan operadores relacionales (tema que trataremos más adelante en detalle). El signo igual (=) es un operador relacional.
Para la siguiente selección de registros especificamos una condición que solicita los usuarios cuya clave es igual a "River":
select nombre,clave
from usuarios
where clave='River';
Si ningún registro cumple la condición establecida con el "where", no aparecerá ningún registro.
Entonces, con "where" establecemos condiciones para recuperar algunos registros.
Para recuperar algunos campos de algunos registros combinamos en la consulta la lista de campos y la cláusula "where":
select nombre
from usuarios
where clave='River';
En la consulta anterior solicitamos el nombre de todos los usuarios cuya clave sea igual a "River".
Ejemplo:
Trabajamos con la tabla "usuarios" que consta de 2 campos: nombre de usuario y clave.
Creamos la tabla:
create table usuarios (
nombre varchar(30),
clave varchar(10)
);
Ingresamos algunos registros:
insert into usuarios (nombre, clave)
values ('Marcelo','Boca');
insert into usuarios (nombre, clave)
values ('JuanPerez','Juancito');
insert into usuarios (nombre, clave)
values ('Susana','River');
insert into usuarios (nombre, clave)
values ('Luis','River');
Realizamos una consulta especificando una condición, queremos ver el usuario cuyo nombre es "Leonardo":
select *from usuarios
where nombre='Leonardo';
Queremos ver el nombre de los usuarios cuya clave es "River":
select nombre from usuarios
where clave='River';
Realizamos un "select" de los nombres de los usuarios cuya clave es "Santi":
select nombre from usuarios
where clave='Santi';
No se muestra ningún registro ya que ninguno cumple la condición.
Primer problema:
Trabaje con la tabla "agenda" en la que registra los datos de sus amigos.
1- Cree la tabla, con los siguientes campos: apellido (cadena de 30), nombre (cadena de 20), domicilio (cadena de 30) y telefono (cadena de 11).
create table agenda ( apellido varchar(30), nombre varchar(20), domicilio varchar(30),
telefono varchar(11) );
2- Ingrese los siguientes registros:
Acosta, Ana, Colon 123, 4234567;
Bustamante, Betina, Avellaneda 135, 4458787;
Lopez, Hector, Salta 545, 4887788;
Lopez, Luis, Urquiza 333, 4545454;
Lopez, Marisa, Urquiza 333, 4545454.
insert into agenda(apellido,nombre,domicilio,telefono) values
('Acosta', 'Ana', 'Colon 123', '4234567');
insert into agenda(apellido,nombre,domicilio,telefono) values
('Bustamante', 'Betina', 'Avellaneda 135', '4458787');
insert into agenda(apellido,nombre,domicilio,telefono) values
('Lopez', 'Hector', 'Salta 545', '4887788');
insert into agenda(apellido,nombre,domicilio,telefono) values
('Lopez', 'Luis', 'Urquiza 333', '4545454');
insert into agenda(apellido,nombre,domicilio,telefono) values
('Lopez', 'Marisa', 'Urquiza 333', '4545454');
3- Seleccione todos los registros de la tabla
select *from agenda;
4- Seleccione el registro cuyo nombre sea "Marisa" (1 registro)
select *from agenda where nombre='Marisa';
5- Seleccione los nombres y domicilios de quienes tengan apellido igual a "Lopez" (3 registros)
select nombre,domicilio from agenda where apellido='Lopez';
6- Muestre el nombre de quienes tengan el teléfono "4545454" (2 registros)
select nombre from agenda where telefono='4545454';
Segundo problema:
Trabaje con la tabla "libros" de una librería que guarda información referente a sus libros disponibles para la venta.
2- Cree la tabla "libros". Debe tener la siguiente estructura:
create table libros (
titulo varchar(20),
autor varchar(30),
editorial varchar(15));
4- Ingrese los siguientes registros:
El aleph,Borges,Emece;
Martin Fierro,Jose Hernandez,Emece;
Martin Fierro,Jose Hernandez,Planeta;
Aprenda PHP,Mario Molina,Siglo XXI;
insert into libros(titulo,autor,editorial) values
('El aleph','Borges','Emece');
insert into libros(titulo,autor,editorial) values
('Martin Fierro','Jose Hernandez','Emece');
insert into libros(titulo,autor,editorial) values
('Martin Fierro','Jose Hernandez','Planeta');
insert into libros(titulo,autor,editorial) values
('Aprenda PHP','Mario Molina','Siglo XXI');
5- Seleccione los registros cuyo autor sea "Borges" (1 registro)
select *from libros where autor='Borges';
6- Seleccione los títulos de los libros cuya editorial sea "Emece" (2 registros)
select titulo from libros where editorial='Emece';
7- Seleccione los nombres de las editoriales de los libros cuyo titulo sea "Martin Fierro" (2registros)
select editorial from libros where titulo='Martin Fierro';
No hay comentarios:
Publicar un comentario