Академический Документы
Профессиональный Документы
Культура Документы
SISTEMAS
Un poco de historia
Sistemas de archivos:
Surgieron a raz de la necesidad de
almacenamiento de la informacin para su
correspondiente reutilizacin (persistencia)
Desventajas:
Redundancia de los datos
Los archivos estn separados unos de otros
(no se pueden combinar fcilmente)
Alto costo para la propagacin de cambios
Inconsistencia debido a actualizaciones
simultneas
Un poco de historia
Procesamiento
de
Usuario del
Archivo de Clientes
Clientes
Archivo
de
Clientes
Procesamiento
de
Prstamos
Usuario del
Archivo de Prstamos
Archivo
de
Prstamos
Un poco de historia
Por qu surgieron los sistemas de Bases de Datos?
Capacidades:
Manejo de persistencia
Control de acceso
Antes
Dpto. Personal
Empleados
Dpto. Ventas
Clientes
Ventas
Dpto. Contabilidad
Cuentas
Inventario
Personal
Ventas
Contabilidad
Ahora
SGBD
BASE DE DATOS
Empleados
Clientes
Ventas
Inventario
Cuentas
Definicin
Definicin
Definicin
Definicin
estructura de datos,
tipos de datos y
Manipular la BD es...
consultar datos
10
SISTEMA DE BASE DE
DATOS
Programas de Aplicacin /
Consultas
SOFTWARE DEL
SGBD
Software para procesar
Consultas / Programas
Software para tener
acceso a los datos
almacenados
Definicin de la
BD
(Metadatos)
Base de
Datos
almacenada
Propiedades fundamentales
Los SGBD deben cumplir con las propiedades ACID para las
transacciones:
Atomicity (Atomicidad: las transacciones son atmicas)
Algunas definiciones
Algunas definiciones
Usuarios finales
Ocasionales o Sofisticados
Acceso espordico y distinto cada vez; usan lenguaje de
consulta
Paramtricos o Normales
Accesos constantes, repetitivos
Avanzados o Especializados
Implementan sus propias aplicaciones especializadas para
cumplir sus complejos requisitos
Ingenieros, cientficos, analistas de empresa, ...
Autnomos
Usan BD personales, a travs de aplicacin/paquete comercial
especfico
Peticiones
DML No planeadas
Procesador
DML
Procesador
Lenguaje
Consulta
Esquemas
externos
Peticiones
compiladas
Procesador
DDL
Optimizador
Esquemas y
transformaciones
Peticiones
optimizadas
Manejador de transacciones
Manejador de almacenamiento
Bases de datos I
Datos
y
Metadatos
Base de datos
18
Controla el acceso y la
Manejador de
componentes:
almacenamiento
tiene
dos
Respaldo y Recuperacin
Recuperacin del sistema tras fallos del hardware o software
Subsistema del SGBD encargado de respaldo y recuperacin
Estado
INICIAL
Programa de
ACTUALIZACIN
de datos
BD KO !!
Estado
FINAL
BD ok
BD ok
Restauracin de la
BD
Deshacer toda
actualizacin de datos
hecha por el programa
XOR
SGBD
Continuacin y
Finalizacin Correcta
del programa
Desventajas de un SGBD
1.
Tamao
2.
3.
4.
Arquitectura ANSI/SPARC
Arquitectura ANSI/SPARC
Nivel de visin o externo
(Vistas Parciales)
Nivel Conceptual o lgico
(Vista Global o Comunitaria)
Nivel Fsico
(Almacenamiento)
Inventario
Ventas
Contabilidad
Nivel de Visin
Externo
Nivel de Visin
BD
Nivel Conceptual
Nivel Conceptual
Nivel Fsico
Interno
Ms cercano a la mquina
Nivel Fsico
Independencia Fsica
Independencia Lgica
Independencia Lgica
Algunos de los posibles cambios en el nivel
conceptual:
Vista externa 2
Correspondencias
Externa / Conceptual
Nivel
conceptual
Correspondencia
Conceptual / Interna
Nivel interno
DISEO DE
SOFTWARE
Pginas y Extensiones
Pginas y Extensiones
Pginas y Extensiones
2.
3.
4.
Pginas y Extensiones
5.
6.
7.
8.
Pginas y Extensiones
Pginas y Extensiones
Las filas de datos se ponen en las pginas una a continuacin de otra,
empezando inmediatamente despus de la cabecera, al final de cada pgina
se encuentra una tabla de posiciones de filas que contiene una entrada por
cada fila de la pgina y cada entrada registra la posicin, desde el principio
de la pgina, del primer byte de la fila.
Pginas y Extensiones
Pginas y Extensiones
Pginas y Extensiones
Argumentos
nombreBaseDatos
Es el nombre de la nueva base de datos, deben ser nicos en
un servidor y pueden tener hasta 128 caracteres, a menos que
no se especifique ningn nombre lgico para el registro. Si no
se especifica ningn nombre lgico de archivo de registro, SQL
Server genera un nombre lgico al anexar un sufijo a
nombreBaseDatos.
ON
Especifica que los archivos de disco utilizados para almacenar
la parte de datos (archivos de datos) se han definido
explcitamente. La palabra clave va seguida de una lista
delimitada por comas de elementos que definen los archivos de
datos del grupo de archivos principal.
Argumentos
PRIMARY
Especifica que la lista de archivos est asociada al grupo
principal. Este grupo contiene todas las tablas del sistema de
base de datos. Tambin contiene todos los objetos no
asignados a los grupos de archivos de usuario.
El primer archivo especificado pasa a ser el archivo principal, el
cual contiene el inicio lgico de la base de datos y de las tablas
del sistema.
Una base de datos slo puede tener un archivo principal. Si no
se especifica PRIMARY, el primer archivo enumerado en la
instruccin CREATE DATABASE se convierte en el archivo
principal.
Argumentos
LOG ON
Especifica que los archivos de registro de la base de
datos (archivos de registro) se han definido
explcitamente.
La palabra clave va seguida de una lista delimitada por
comas la cual define las caractersticas de los archivos
de registro.
Si no se especifica LOG ON, se crea automticamente
un nico archivo de registro con un nombre generado
por el sistema y un tamao que es el 25% de la suma
de los tamaos de todos los archivos de datos de la
base de datos.
Argumentos
NAME
Especifica el nombre lgico del archivo.
Este nombre es el utilizado para referenciar al
archivo en las sentencias del Transact-SQL que
se ejecuten despus.
Argumentos
FILENAME
Especifica el nombre de archivo del sistema
(archivo fsico). Se debe especificar la ruta de
acceso y nombre de archivo que el sistema
operativo utiliza cuando crea la base de datos.
Argumentos
SIZE
Especifica el tamao para el archivo. De no hacerlo
SQL Server utiliza el tamao del archivo principal de la
base de datos model.
Cuando este parmetro no es especificado para un
archivo secundario o de registro SQL Server
automticamente le asigna 1 MB. El valor mnimo a
asignar es de 512 KB. Si no se especifica tamao, el
valor predeterminado es 1 MB.
El tamao especificado para el archivo principal debe
tener al menos el tamao del archivo principal de la
base de datos model.
Argumentos
MAXSIZE
Especifica el tamao mximo de crecimiento
del archivo. Se pueden utilizar los sufijos KB y
MB, el valor predeterminado es MB.
Especifique un nmero entero; no incluya
decimales.
Si no se especifica, el archivo aumenta hasta
que el disco est lleno.
Argumentos
UNLIMITED
Especifica que el archivo aumenta de tamao
hasta que el disco est lleno.
Argumentos
FILEGROWTH
Especifica el incremento de crecimiento del archivo, este valor
no puede exceder el valor MAXSIZE. Emplee un nmero
entero.
CREATE DATABASE
Observaciones
DISEO DE
SOFTWARE
Arquitectura ANSI/SPARC
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
ARQUITECTURA
Arquitectura ANSI
Objetivo
Hay tres caractersticas importantes inherentes a los sistemas de
bases de datos:
Arquitectura ANSI
Estructura
Nivel
conceptual
Nivel interno
Nivel externo
n esquemas
externos
Vista usuario 2
Nivel externo
confidencialidad
Nivel conceptual
integridad-coherencia
Nivel interno
gestin de acceso
Vista usuario 1
Esquema fsico
Arquitectura ANSI
Estructura
Nivel conceptual
En el nivel conceptual tiene un esquema lgico que describe la
estructura de toda la base de datos para una comunidad de
usuarios. El esquema conceptual oculta los detalles de las
estructuras fsicas de almacenamiento y se concentra en
describir entidades, tipos de datos, vnculos o relaciones,
operaciones de los usuarios y restricciones.
Arquitectura ANSI
Estructura
Nivel interno
En el nivel interno se describe la estructura fsica de la base
de datos mediante un esquema interno. Este esquema se
especifica mediante un modelo fsico y describe todos los
detalles para el almacenamiento de la base de datos, as como
los mtodos de acceso. Esquema interno: descripcin de la BD
en trminos de su representacin fsica.
Ms cercano a la mquina
Arquitectura ANSI
Estructura
Nivel externo
En el nivel externo se describen varios esquemas externos o
vistas de usuario. Cada esquema externo describe la parte de
la base de datos que interesa a un grupo de usuarios
determinado y oculta a ese grupo el resto de la base de datos.
En este nivel se puede utilizar un modelo conceptual o un
modelo lgico para especificar los esquemas. Esquema
externo: descripcin de las vistas parciales de la BD que
poseen los distintos usuarios.
Nivel de Visin
Cada visin puede proporcionar diferentes
representaciones de los mismos datos
Visin Vendedor
Fechas con formato:
(dd-mm-yy)
Visin Contador
BD
Arquitectura ANSI
Independencia Fsica
Independencia Lgica
Definicin
el valor informativo del conjunto es superior a la suma del valor informativo de los
elementos individuales que lo constituyen
Instalacin costosa:
permanece entre
Transaccin (Tx)
Compilador
D.C.L
Tablas de
Autorizacin
(D. de D.)
Tablas de
acceso
concurrente
3. Consultas y
Programas de
Usuario normal
Procesador del
lenguaje
de Consulta y
optimizador
Manejador de
Transacciones
Manejador de
Almacenamiento
Base de Datos
fsica y
Diccionario de
Datos.
1. Definicin
del esquema
de
la B. de D.
Compilador
D.D.L
Tablas de
descripcin
de la B.de D.
(D.de.D)
El esquema conceptual:
El esquema lgico:
SGBD
SGBD
Base
de
Datos
Subsistema
de gestin de datos
(mtodos de acceso)
S.O.
Fichero
Aplicacin A
Estado
SGBD
rea de trabajo
SO
Datos
Almacenamiento intermedio
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
BD
Esquema interno
SO
Datos
Almacenamiento intermedio
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
BD
SGBD
Estado
Esquema lgico
rea de trabajo
SO
Almacenamiento intermedio
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
Esquema interno
6
7
Datos
BD
10
Estado
rea de trabajo
8,9
SGBD
SO
Datos
Almacenamiento intermedio
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
BD
DISEO DE
SOFTWARE
Tipos de Cardinalidad
Resolviendo Relaciones
muchos -a muchos
Ejemplo de Entidad
Asociativa
Ejemplo de Entidad
Asociativa
DISEO DE
SOFTWARE
Dependecia Funcional
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
Dependencia funcional
DEPENDENCIA FUNCIONAL
Si y slo si :
t1
t2
Si t1 y t2 coinciden en el atributo a,
Entonces deben coincidir tambin
en el atributo b.
Ejemplo:
{ dni, nombre } --> { direccin }
Ejemplo:
Ejemplo:
Entonces:
DISEO DE
SOFTWARE
Normalizacion
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
Formas normales
El proceso de normalizacin gira en torno al
concepto de formas normales.
Se dice que una relacin se encuentra en una
determinada forma normal si satisface un
conjunto de condiciones establecidas.
Toda relacin normalizada est en 1FN, es
decir: normalizada y 1FN significa lo mismo.
Formas normales
Relaciones 3FN
Relaciones Boyce-Codd (BCNF)
Relaciones 4NF
Relaciones 5FN
Ejemplos:
Venta (nmero-fac, cliente, producto[i], unidades[i] )
donde
016 = departamento
DISEO DE
SOFTWARE
SQL
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
Qu es SQL?
Aplicacin
del Cliente
Validacin de
Permisos
Solicitud
SQL
Cliente
APIs de la BD
(OLEDB, ODBC,
Microsoft Jet, etc.)
Librera de
Autentificacin
del Cliente
Datos
Server
Database
Management
System
(SGBD)
Transacciones-SQL
Son utilizadas para establecer los permisos sobre los elementos de una BD
Son utilizadas para trabajar con los datos de las Bases de Datos como consultar,
insertar, actualizar o la eliminacin de datos.
Batches
Comentarios
Tipos de Datos
Variables
Operadores
Funciones
Nombres y Alias
Ejemplo:
SELECT Nombre,[Fecha de Nacimiento]
FROM Empleados
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
Batches
Comentarios
Comentarios de Bloque
Variables
Dentro de SQL se pueden definir variables para almacenar valores
temporales.
Todas las variables deben iniciar con el smbolo @
Declaracin de variables
Sintaxis:
DECLARE @variable Tipo de Dato
Ejemplo:
DECLARE @nombre varchar(15)
Sintaxis:
SET @variable = valor
Ejemplo:
SET @nombre = Juan Prez
Sintaxis:
SELECT @variable
Ejemplo:
SELECT @nombre
Devolver el valor de
las variables
Operadores
Tipos de Operadores
Aritmticos
+ - * / ^
Comparacin
>
<
<>
>=
Concatenacin
+
Lgicos
And
Or
Not
<=
Funciones
COUNT
SUM
Suma de un campo
SUM (Campo)
AVG
Promedio de un campo
AVG (Campo)
MAX
Mximo de un campo
MAX (Campo)
MIN
Mnimo de un campo
MIN (Campo)
SQL: DDL
Transacciones DDL
Crear Tablas
Eliminar Tablas
SQL:DDL
Se pueden crear tablas con la instruccin
CREATE TABLE nombre_tabla
Comando T-SQL:
CREATE DATABASE
Sintaxis:
Ejemplo:
create database cursosql
on
(name = MiDB,
filename = 'C:\Archivos de programa\Microsoft SQL Server\MSSQL$SQLCEDEC1\Data\cursosql.mdf',
size=8MB, Maxsize=9MB,filegrowth=100Kb)
LOG ON
(name = cursosql_reg,
filename = 'C:\Archivos de programa\Microsoft SQL Server\MSSQL$SQLCEDEC1\Data\cursosql.ndf',
size=1000MB, Maxsize=1500MB,filegrowth=100Mb)
use cursosql
go
Universidad
Nacional
Mayorde
de San
Marcos
sp_helpdb
[base
datos]
E.A.P. de Ingeniera de Software
Utilizar una BD
USE
Sintaxis:
USE Nombre de la BD
Ejemplo:
USE Animales
Comando T-SQL:
CREATE TABLE
Sintaxis:
Ejemplo 1:
Es posible definir para cada columna en caso de ser necesario, una valor
que funcione como predeterminado al momento de ingresar registros a la
tabla.
Restricciones de Integridad
Aseguran que los cambios realizados a una BD no provoquen
inconsistencia en la informacin.
de
Tipos de Datos
Clasificacin
Nmeros
Cadenas de Texto
Fechas y Horas
Tipos de Datos
Descripcin
SMALLINT
INTEGER
Nmeros enteros
BIT (Longitud)
REAL
DOUBLE PRECICIN
FLOAT (Precisin)
DECIMAL
Nmeros decimales y $
CHAR (Longitud)
CHARACTER
VARCHAR (Longitud)
DATE
Fechas
TIME (Precisin)
Horas
INTERVAL
Intervalo de Tiempo
DATETIME
Fecha y Hora
vs VARCHAR
Nota:
El limite, para CHAR Y VARCHAR es de 8 000 caracteres
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
donde:
N es el total de dgitos del dato.
d es el numero de cifras decimales que aparecern en el campo
Ejemplo
896.25
=>
DECIMAL ( 5,2 )
Las tablas pueden contener una sola columna que tenga como valor un valor
inicial y que en cada registro que se agregue se pueda ver incrementado
dependiendo del valor que se defini en la sintaxis de la creacin de la tabla
Restricciones de Integridad
Un atributo puede o no admitir nulos. En
SQL se especifica mediante la clusula NOT
NULL.
Nulos:
Integridad Referencial:
Garantiza la existencia de
Garantiza la unicidad y
obligatoriedad del o los atributos definidos como
clave primaria. Para ello se utiliza la clusula
PRIMARY KEY.
Clave
Primaria:
clusulas
Restricciones de Integridad
Sea el modelo:
DEPARTAMENTO
# cdigo
* nombre
* ciudad
el lugar de trabajo de
adscrito a
el subordinado
de
EMPLEADO
#cdula
* nombre
* salario
comisin
* cargo
el jefe de
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
nombre
( cdula NUMBER(10)
PRIMARY KEY,
nombre
VARCHAR(30)
NOT NULL,
jefe
NUMBER(10)
REFERENCES empleado,
salario
NUMBER(10,2)
NOT NULL,
comisin
NUMBER(2) ,
cargo
VARCHAR(20)
depto
NUMBER(6)
);
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
NOT NULL,
Clave fornea
sobre la
misma tabla
Clave fornea
Restricciones de Integridad
Ejemplos con la clusula CHECK:
CREATE TABLE empleado
( cdula
Puede especificarse
el atributo hacia el
cual se refiere la
clave fornea
NUMBER(10)
PRIMARY KEY,
nombre
VARCHAR(30)
NOT NULL,
jefe
salario
NUMBER(10,2)
comision
cargo
VARCHAR(20)
depto
);
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
Restricciones de Integridad
Especificacin de una clave primaria compuesta:
CREATE TABLE envio (
snro
NUMBER(6),
pnro
NUMBER(6),
Restricciones de Integridad
Clave fornea hacia una clave primaria compuesta:
CREATE TABLE revision(
codrevision NUMBER(5) PRIMARY KEY,
Restricciones de Integridad
Borrando Columnas
Para borrar una Columna se realiza a travs del la sentencia ALTER TABLE
Sintaxis:
ALTER TABLE Nom_Tabla DROP COLUMN Nom_Columna
Ejemplo.
Para poder cambiar de tipo de dato a un campo se utiliza la sentencia ALTER TABLE
Sintaxis.
ALTER TABLE Nom_Tabla CHANGE Nom_Columna Nom_Columna Nuevo_tipo
Ejemplo.
-- inicialmente el campo es varchar de 200
Sintaxis.
ALTER TABLE Nom_Tabla CHANGE Nom_Anterior Nuevo_Nombre mismo_tipo
Ejemplo.
-- inicialmente el campo es CHAR(200)
Sintaxis.
ALTER TABLE Tabla ADD CONSTRAINT PRIMARY KEY (C1)
Ejemplo.
- - Agregamos restriccin PRIMARY KEY en columna C1
ALTER TABLE TX ADD CONSTRAINT PRIMARY KEY (C1)
Sintaxis.
ALTER TABLE Tabla DROP PRIMARY KEY (
Ejemplo.
- - Borra la restriccin PRIMARY KEY de la tabla TX.
Renombrando tablas
SQL SERVER
exec SP_RENAME nombre', nuevonombre'
Ingresando valores
EJEMPLO:
CREATE TABLE t (
c varchar(3));
Eliminando valores
FROM tabla
[WHERE condicion];
Ej:
DELETE
FROM envio
WHERE snro=34;
La condicin puede incluir subconsultas
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
Actualizando valores
Actualizando valores
Ejemplo:
UPDATE envio
Implementacin de Supertipos/Subtipos
PERSONA
#cdula
*nombre
ESTUDIANTE
*promedio
PROFESOR
*registro
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
SUPERTIPOS/SUBTIPOS
SUPERTIPOS/SUBTIPOS
cedula
SUPERTIPOS/SUBTIPOS
DML
Un nombre de columna
SQL toma el valor de esa columna de cada fila de la tabla y lo muestra como resultado de la consulta
Una constante
Especifica que ese mismo valor de constante aparecer en cada fila de los resultados de la consulta
Una expresin
Indica a SQL que debe calcular el valor a poner e los resultados, segn se especifica en la expresin
Instruccin SELECT
SELECT
FROM
HAVING
GROUP BY
WHERE
ORDER BY
Lista de atributos
Lista de relaciones (tablas)
SELECT:
FROM:
WHERE:
condicin
EJEMPLO
Supongamos la
relacin
EMPLEADO as:
Cdigo
1
2
3
8
10
12
Sea la consulta:
SELECT nombre, edad
FROM empleado
WHERE edad >= 28
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
Nombre
Edad Depto
Jorge Campos
33
1
Enrique Muoz
25
1
Esteban Paz
21
1
Jorge Arias
30
2
Juan Martnez
19
2
Anselmo Rodas
28
6
EJEMPLO
Nombre
Edad
Jorge Campos
33
Jorge Arias
30
Anselmo Rodas
28
= (igual),
!= <> (diferente),
> (mayor que), < (menor que),
>= (mayor o igual que), <= (menor o igual que)
NOTA: tambin se pueden comparar cadenas de caracteres
con operadores como >= y <=
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
EJEMPLO
SELECT *
FROM empleado
WHERE edad < 28 AND depto = 1
SELECT *
FROM empleado
WHERE edad BETWEEN 18 AND 30
EJEMPLO
Ordenacin de
Registros (ORDER BY)
Clusula T-SQL:
Sintaxis:
ORDER BY
ASC -
Ordenacin Ascendente
SELECT *DESC
FROM
empleados
ORDER BY idempleado desc
- Ordenacin
Descendente
Operador LIKE
Ejemplos:
DISTINCT Vs ALL
Condiciones de Bsqueda
(Valores Nulos)
Renombramiento con AS
EJERCICIO
Anidamiento de consultas
Otra manera
Funciones de agregacin
Ejemplos:
Clusula GROUP BY
Formato ejemplo:
Ejemplo:
SELECT idproveedor,sum(unidadesenexistencia)
FROM productos
group by idproveedor
SELECT idproveedor,unidadesenexistencia
FROM productos
ORDER BY idproveedor
COMPUTE sum(unidadesenexistencia)
SELECT idproveedor,unidadesenexistencia
FROM productos
ORDER BY idproveedor
COMPUTE sum(unidadesenexistencia) by idproveedor
COMPUTE sum(unidadesenexistencia)
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
Q ueremos saber la cantidad de libros de cada editorial, podemos tipear la siguiente sentencia:
select count(*) from libros
where editorial='Planeta';
HAVING
s como la clusula "where" permite seleccionar (o rechazar) registros
individuales; la clusula "having" permite seleccionar (o rechazar) un grupo de
registros.
Clusula HAVING
Ejemplo:
Idorden
cantidad
10
10
25
15
30
SELECT idproducto,
sum(cantidad) as Total
FROM pedidos
GROUP BY idproducto
HAVING sum(cantidad)>=30
idproducto
Total
35
45
Ejercicios:
SELECT idproveedor,sum(unidadesenexistencia)
FROM productos
group by idproveedor
having sum(unidadesenexistencia)>200
SELECT idproveedor,sum(unidadesenexistencia)
FROM productos
group by idproveedor
having idproveedor<=5
La clusula COMPUTE permite colocar al final de la consulta una fila con un resultado de alguna
funcin matemtica aplicada.
Puede utilizarse tambin la clusula COMPUTE BY para crear una especie de subtotales con su
respectivo total general.
SELECT idproveedor,
unidadesenexistencia
FROM productos
ORDER BY idproveedor
COMPUTE sum(unidadesenexistencia)
SELECT idproveedor,
unidadesenexistencia
FROM productos
ORDER BY idproveedor
COMPUTE sum(unidadesenexistencia)
by idproveedor
COMPUTE sum(unidadesenexistencia)
IdProveedor
Unidadesenexistencia
39
IdProveedor
Unidadesenexistencia
17
39
53
17
Sum
56
76
53
Sum
194
76
Sum
138
Sum
194
Funciones de agregacin:
Ejemplo
Calcular el nmero de veces que se ha prestado la
pelcula ms prestada.
SELECT MAX(cuenta) AS numero_veces
FROM
( SELECT DISTINCT COUNT(*) AS cuenta
FROM pelicula AS pe, prestamo AS pr, copia AS co
WHERE pr.codcopia=co.codcopia
AND
co.codpeli=pe.codpeli
GROUP BY pe.codpeli
)
Universidad Nacional Mayor de San Marcos
E.A.P. de Ingeniera de Software
UPDATE empleado
SET nombre = Juan Calvo
WHERE codigo = 1;