Página principal

Ejercicios sencillos base de datos municipios


Descargar 31.85 Kb.
Fecha de conversión22.09.2016
Tamaño31.85 Kb.
EJERCICIOS SENCILLOS

BASE DE DATOS MUNICIPIOS




  1. Obtener el código, nombre y extensión de todos los municipios

SQL> select cod_m,nom_m,extension from municipios;


COD_M NOM_M EXTENSION

---------- -------------------- ----------

V Valencia 5

M Madrid 20

B Barcelona 12


  1. Volver a hacer la consulta anterior usando un alias “muni” para la tabla y precediendo los nombres de los campos con este alias.

SQL> select muni.cod_m,nom_m,extension from municipios muni;


COD_M NOM_M EXTENSION

---------- -------------------- ----------

V Valencia 5

M Madrid 20

B Barcelona 12



  1. Obtener todos los datos de la tabla personas

SQL> select * from personas;


DNI NOMBRE APELLIDOS E FECHA_NT S COD_V_VIVE

---------- --------------- -------------------- - -------- - ----------

901234 Rosa Mª Puig Vázquez V 03/02/74 A 1

123456 Antonio Morales Pérez S 03/02/74 A 2

789012 Pedro Morales Miguelez C 12/06/48 N 2

345678 Maria Pérez Reig C 05/11/45 A 2

567890 Berta Antúnez Veiga C 03/02/59 A 4

234567 Mario Pereira Martínez C 03/02/58 A 4

456789 Ana Rodríguez Pérez C 03/02/60 A 5

678901 Jose Gancedo Comuñas C 15/08/60 A 5

890123 Ana Gancedo Rodríguez S 06/01/80 N 5

012345 Jose Gandedo Rodríguez S 28/04/72 N 5

112233 Luis Rodríguez Huerga S 05/05/71 A 6
DNI NOMBRE APELLIDOS E FECHA_NT S COD_V_VIVE

---------- --------------- -------------------- - -------- - ----------

445566 Rosana Salví García S 06/02/71 A 8

778899 María Salví García S 23/04/74 A 8


13 filas seleccionadas.



  1. Extraer todas las filas de la tabla Propiedad de modo que el resultado salga de la siguiente forma

SQL> select * from propiedad;


COD_V DNI PORCENTAJE_PROPIEDAD

---------- ---------- --------------------

1 901234 100

2 345678 50

2 789012 50

3 901234 100

4 567890 50

4 234567 50

5 456789 50

5 678901 50

6 112233 100

7 778899 100

8 445566 80
COD_V DNI PORCENTAJE_PROPIEDAD

---------- ---------- --------------------

8 778899 20

12 filas seleccionadas.




  1. Obtener los nombres de los municipios cuyo número de habitantes sea mayor que 2.000.000 ordenado por número de habitantes en descendente.

SQL> select nom_m from municipios where n_habitantes >2000000 order by n_habitantes desc;


NOM_M

--------------------

Madrid

Barcelona




  1. Obtener la dirección de las viviendas de tipo Piso ordenadas en orden alfabético.

SQL> select direccion from viviendas where TIPO='PI' order by direccion asc;


DIRECCION

--------------------

Colón, 25-30

C/Toledo, 5 1º

Diagonal 47-26

Gran Vía, 5 1ºA





  1. Obtener los nombres, apellidos y fecha de nacimiento de las personas nacidas entre el año 1970 y el 1979 ordenados por edad.

SQL> select nombre,apellidos,fecha_nto from personas where fecha_nto between '31/12/1969' and '31/1



2/1979' order by fecha_nto asc;
NOMBRE APELLIDOS FECHA_NT

--------------- -------------------- --------

Rosana Salví García 06/02/71

Luis Rodríguez Huerga 05/05/71

Jose Gandedo Rodríguez 28/04/72

Antonio Morales Pérez 03/02/74

Rosa Mª Puig Vázquez 03/02/74

María Salví García 23/04/74


6 filas seleccionadas.

Con to_char
select nombre,apellidos,fecha_nto from personas

where to_char (fecha_nto,'yyyy')>1970

and to_char (fecha_nto,'yyyy')< 1979

order by (sysdate-fecha_nto) desc;
SQL> select nombre,apellidos,fecha_nto from personas

2 where to_char (fecha_nto,'yyyy')>1970

3 and to_char (fecha_nto,'yyyy')< 1979

4 order by (sysdate-fecha_nto) desc;
NOMBRE APELLIDOS FECHA_NT

--------------- -------------------- --------

Rosana Salví García 06/02/71

Luis Rodríguez Huerga 05/05/71

Jose Gandedo Rodríguez 28/04/72

Antonio Morales Pérez 03/02/74

Rosa Mª Puig Vázquez 03/02/74

María Salví García 23/04/74


6 filas seleccionadas.


  1. Obtener los DNIs de las personas que tienen al menos un piso en propiedad con un porcentaje mayor del 50%. Fijarse en el nombre del campo en el resultado.

SQL> select DISTINCT DNI "PROPIETARIO" from propiedad where PORCENTAJE_PROPIEDAD >50;


PROPIETARI

----------

778899

901234


445566

112233



  1. Seleccionar el DNI, código de vivienda y porcentaje de la tabla PROPIEDAD ordenador por DNI en ascendente y por porcentaje en descendente.

SQL> select DNI,COD_V,PORCENTAJE_PROPIEDAD from propiedad order by DNI asc, PORCENTAJE_PROPIEDAD desc;


DNI COD_V PORCENTAJE_PROPIEDAD

---------- ---------- --------------------

112233 6 100

234567 4 50

345678 2 50

445566 8 80

456789 5 50

567890 4 50

678901 5 50

778899 7 100

778899 8 20

789012 2 50

901234 3 100
DNI COD_V PORCENTAJE_PROPIEDAD

---------- ---------- --------------------

901234 1 100
12 filas seleccionadas.


  1. Seleccionar los nombres y números de habitantes de los municipios cuyo nombre contiene una ‘c’ o una ‘d’ y cuyo número de habitantes sea mayor que 2.000.000 ordenadors en descendente por número de habitantes.

SQL> select nom_m,n_habitantes from municipios where (nom_m like '%c%' or nom_m like '%d%') and n_ha



bitantes > 2000000 order by n_habitantes desc;
NOM_M N_HABITANTES

-------------------- ------------

Madrid 5000000

Barcelona 2500000





  1. Listas el nombre, apellidos y estado civil de las personas cuyo nombre o apellidos contenga la letra ‘P’ y de todos aquellos que estén solteros.

SQL> select nombre,apellidos,e_civil from personas where (nombre like '%P%' or apellidos like '%P%')



or e_civil='S';
NOMBRE APELLIDOS E

--------------- -------------------- -

Rosa Mª Puig Vázquez V

Antonio Morales Pérez S

Pedro Morales Miguelez C

Maria Pérez Reig C

Mario Pereira Martínez C

Ana Rodríguez Pérez C

Ana Gancedo Rodríguez S

Jose Gandedo Rodríguez S

Luis Rodríguez Huerga S

Rosana Salví García S

María Salví García S
11 filas seleccionadas.



  1. Listar la dirección y número de habitaciones de las viviendas de tipo “Chalet” o “Casa” en las que haya más de 3 habitaciones. Ordenar el resultado por número de habitaciones en descendente.

SQL> select direccion,n_habitaciones from viviendas



2 where (TIPO='CH' or TIPO='CA')

3 and n_habitaciones >3

4 order by n_habitaciones desc;
DIRECCION N_HABITACIONES

-------------------- --------------

de Gracia, 5 6

Blasco Ibánez, 3 5



Av. Mediterraneo, 67 4
select direccion,n_habitaciones from viviendas where (TIPO='CH' or TIPO='CA') and n_habitaciones >3 order by n_habitaciones desc;


La base de datos está protegida por derechos de autor ©espanito.com 2016
enviar mensaje