Uso de Postgre SQL

Páginas: 5 (1090 palabras) Publicado: 5 de agosto de 2014
Maestría en Administración de Bases de Datos


Curso: Programación Avanzada SQL


Profesor:Ing. Mario Chacón

Taller 3

Integrantes:
Ian Araya Elizondo


Entrega:
16/3/2014

3.1 Verifique el tamaño de la base de datos y de la tabla. Anote ambos resultados
SELECT pg_size_pretty(pg_database_size('postgres'));

SELECT
relname as "Table",pg_size_pretty(pg_total_relation_size(relid)) As "Size",
pg_size_pretty(pg_total_relation_size(relid) - pg_relation_size(relid)) as "External Size"
FROM pg_catalog.pg_statio_user_tables ORDER BY pg_total_relation_size(relid) DESC;


3.2 Genere una nueva tabla con el nombre EMPLEADOS
Create table empleados (
cedula integer,
numero_folio smallint,
cedula_padre numeric(9,0),
cedula_madre numeric(9,0),codigo_hospital smallint,
hora_suceso smallint,
fecha_suceso date,
genero char(1),
nacionalidad char(1),
defuncion char(1),
pais_del_padre smallint,
pais_de_la_madre smallint,
prov_canton_madre smallint,
fecha_naturalizacion varchar(8),
apellido1 varchar(13),
apellido2 varchar(13),
nombre varchar(30),
nombre_padre varchar(30),
nombre_madre varchar(30),
lugar_nacimiento varchar(30));3.3 Copie la información de la tabla original (RegistroCivil) a la nueva tabla (Empleados).

Se usaron los siguientes comandos:
insert into empleados
select
cedula,
cast(num_folio as smallint),
cast(cedula_padre as numeric(9,0)),
cast(cedula_madre as numeric(9,0)),
cast(codigo_hospital as smallint),
cast(hora_suceso as smallint),
cast(fecha_suceso as date),
cast(generoas char(1)),
cast(nacionalidad as char(1)),
cast(defuncion as char(1)),
cast(pais_del_padre as smallint),
cast(pais_de_la_madre as smallint),
cast(prov_canton_madre as smallint),
cast(fecha_naturalizacion as varchar(8)),
cast(apellido1 as varchar(13)),
cast(apellido2 as varchar(13)),
cast(nombre as varchar(30)),
cast(nombre_padre as varchar(30)),
cast(nombre_madre asvarchar(30)),
cast(lugar_nacimiento as varchar(30))
from reg

Para corregir los errores o pulgas se usaron los siguientes comandos:
update reg set fecha_suceso='19831010'
where fecha_suceso='π00000000'

update reg set fecha_suceso='19831010'
where fecha_suceso='π00000000'

update reg set fecha_suceso='0'
where cedula_madre='π00000000'

update reg set fecha_suceso='19831010'
whereright(fecha_suceso,4)='0231'

3.4 Verifique el tamaño de la base de datos y de la tabla. Anote ambos resultados y
compárelos con los resultados del ejercicio 1.






3.5 Liste la información completa de una persona, para ello usted indicará el número de
cédula. Anote el tiempo de ejecución y compare el plan de ejecución con el generado al
correr la sentencia en taller 2.




Taller3
-- Executing query:
Select * from empleados
where cedula='111410227'
Total query runtime: 22282 ms.
1 row retrieved.

Taller 2
-- Executing query:
Select * from empleados
where cedula='111410227'
Total query runtime: 1514 ms.
1 row retrieved.

3.6 Despliegue cuántos registros hay empleando la columna cedula.





3.7 Despliegue cuántos nombres diferentes hay


3.8Despliegue cuántos nombres diferentes hay. Despliéguelos en orden de aparición
(descendente) y luego por orden alfabético ascendente

select nombre, count(nombre) as conteo
from empleados
group by nombre
order by conteo desc, nombre asc

-- Executing query:
select nombre, count(nombre) as conteo
from empleados
group by nombre
order by conteo desc, nombre asc

Total query runtime: 72250ms.
721070 rows retrieved.




3.9 Crear una tabla llamada NOMBRES, la cual contiene los diferentes nombres que hay en la
tabla de Empleados. Para cada nombre en la tabla debe agregar un código único.

CREATE SEQUENCE nombre_seq;
CREATE TABLE nombres (
nombre_id integer NOT NULL DEFAULT nextval('nombre_seq'),
nombre varchar(30)
);
ALTER SEQUENCE nombre_seq OWNED BY...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • requerimientos para postgres sql
  • Sentencias sql (postgres)
  • Postgres sql
  • Postgre Sql
  • SQL con postgres
  • ¿Què es postgre sql?
  • Postgres Sql
  • Uso de win sql

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS