View
851
Download
3
Category
Preview:
Citation preview
UNIDAD ACADÉMICA CIENCIAS DE LA INGENIERÍA Y APLICADAS
INGENIERÍA EN INFORMÁTICA Y SISTEMAS COMPUTACIONALES
ING:
Jaime Acurio
ASIGNATIRA
SISTEMAS DISTRIBUIDOS
LATACUNGA - ECUADOR
QUE SON BASES DE DATOS
Una base de datos es un “almacén” que nos permite guardar grandes
cantidades de información de forma organizada para que luego podamos
encontrar y utilizar fácilmente.
El término de bases de datos fue escuchado por primera vez en 1963, en un
simposio celebrado en California, USA. Una base de datos se puede definir
como un conjunto de información relacionada que se encuentra agrupada ó
estructurada.
Desde el punto de vista informático, la base de datos es un sistema formado
por un conjunto de datos almacenados en discos que permiten el acceso
directo a ellos y un conjunto de programas que manipulen ese conjunto de
datos.
Cada base de datos se compone de una o más tablas que guarda un conjunto
de datos. Cada tabla tiene una o más columnas y filas. Las columnas guardan
una parte de la información sobre cada elemento que queramos guardar en la
tabla, cada fila de la tabla conforma un registro.
1. CARACTERÍSTICAS
Entre las principales características de los sistemas de base de datos podemos
mencionar:
Independencia lógica y física de los datos.
Redundancia mínima.
Acceso concurrente por parte de múltiples usuarios.
Integridad de los datos.
Consultas complejas optimizadas.
Seguridad de acceso y auditoría.
Respaldo y recuperación.
Acceso a través de lenguajes de programación estándar
¿QUÉ ES UN DATO?
El Dato es una representación simbólica (numérica, alfabética, algorítmica etc.),
un atributo o una característica de una entidad. El dato no tiene valor semántico
(sentido) en sí mismo, pero si recibe un tratamiento (procesamiento) apropiado,
se puede utilizar en la realización de cálculos o toma de decisiones. Es de
empleo muy común en el ámbito informático y, en general, prácticamente en
cualquier disciplina científica.
En programación, un dato es la expresión general que describe las
características de las entidades sobre las cuales opera un algoritmo.
En Estructura de datos, es la parte mínima de la información.
Un dato por sí mismo no constituye información, es el procesado de los datos
lo que nos proporciona información.
¿QUÉ ES TABLA?
Son los objetos principales de bases de datos que se utilizan para guardar
datos.
Podemos tener más de una tabla en la base de datos para guardar información
relacionada. Por ejemplo, en una tabla podemos tener la información de
clientes, en la otra la información del producto y en la tercera podemos enlazar
los datos de dos tablas anteriores, por ejemplo los pedidos que hicieron
clientes de cada producto.
Aquí tienes el ejemplo de una tabla, es la tabla "Clientes" de la base de datos
"Neptuno" incluida en Access, pulsa la imagen en miniatura para ver la tabla
completa:
¿QUÉ ES COLUMNA?
En el contexto de una tabla de base de datos relacional, una columna es un
conjunto de valores de datos de un simple tipo particular, uno por cada fila de la
tabla.1 Las columnas proporcionan la estructura según la cual se componen las
filas.
Cada fila proporcionaría un valor de los datos para cada columna y después
sería entendida como solo simple valor de datos estructurado, en este caso
representando a una compañía. Más formalmente, cada fila puede ser
interpretada como una variable relacional, compuesta por un conjunto de
tuplas, con cada tupla consistiendo en los dos elementos: el nombre de la
columna relevante y el valor que esta fila proporciona para esa columna.
Columna 1 Columna 2
Fila 1 Fila 1 Columna 1 Fila 1 Columna 2
Fila 2 Fila 2 Columna 1 Fila 2 Columna 2
Fila 3 Fila 3 Columna 1 Fila 3 Columna 2
¿QUÉ ES UNA FILA?
En el contexto de a base de datos emparentada, a fila- también llamó a
expediente o tuple- representa un solo, estructurado implícito datos artículo en
a tabla. En términos simples, una tabla de la base de datos se puede pensar en
como consistiendo en filas y columnas o campos. Cada fila en una tabla
representa un sistema de datos relacionados, y cada fila en la tabla tiene la
misma estructura.
Por ejemplo, en una tabla que representa a compañías, cada fila representaría
a sola compañía. Las columnas pudieron representar cosas como nombre de
compañía, la dirección de la calle de la compañía, si llevan a cabo a la
compañía público, su número del IVA, etc…. En una tabla que representa la
asociación de empleados con departamentos, cada fila asociaría a un
empleado a un departamento.
La estructura implícita de una fila, y el significado de los valores de los datos en
una fila, requiere que la fila esté entendida como abastecimiento de una
sucesión de los valores de los datos, uno en cada columna de la tabla. La fila
entonces se interpreta como a relvar integrado por un sistema de tuples, con
cada tuple consistiendo en los dos artículos: el nombre de la columna relevante
y del valor que esta fila proporciona para esa columna.
¿CLAVE PRIMARIA?
En el diseño de bases de datos relacionales, se llama clave primaria a un
campo o a una combinación de campos que identifica de forma única a cada
fila de una tabla. Una clave primaria comprende de esta manera una columna o
conjunto de columnas. No pueden haber dos filas en una tabla que tengan la
misma clave primaria.
Una clave primaria debe identificar unívocamente a todas las posibles filas de
una tabla y no solo a las filas que se encuentran en un momento determinado.
Ejemplos de claves primarias son DNI (asociado a una persona) o ISBN
(asociado a un libro). Las guias telefónicas y diccionarios no pueden usar
nombres o palabras o números del sistema decimal de Dewey como claves
candidatas, porque identifican unívocamente números de teléfono o palabras.
Una clave primaria es un caso especial de clave única. La mayor diferencia es
que para claves únicas, no se impone automáticamente la restricción implícita
NOT NULL, mientras que para claves primarias, sí. Así, los valores en
columnas de clave única pueden o no ser NULL. Otra diferencia es que las
claves primarias deben definirse por medio de otra sintaxis.
¿CLAVE FORÁNEA?
En el contexto de bases de datos relacionales, una clave foránea (o Foreign
Key FK) es una limitación referencial entre dos tablas. La clave foránea
identifica una columna o grupo de columnas en una tabla (tabla hija o
referendo) que se refiere a una columna o grupo de columnas en otra tabla
(tabla maestra o referenciada). Las columnas en la tabla referendo deben ser la
clave primaria u otra clave candidata en la tabla referenciada.
Los valores en una fila de las columnas referendo deben existir solo en una fila
en la tabla referenciada. Así, una fila en la tabla referendo no puede contener
valores que no existen en la tabla referenciada. De esta forma, las referencias
pueden ser creadas para vincular o relacionar información. Esto es una parte
esencial de la normalización de base de datos. Múltiples filas en la tabla
referendo pueden hacer referencia, vincularse o relacionarse a la misma fila en
la tabla referenciada. Mayormente esto se ve reflejado en una relación uno
(tabla maestra o referenciada) a muchos (tabla hija 0o referendo).
TIPOS DE RELACIONES:
UNA RELACIÓN UNO A VARIOS
La relación uno a varios es el tipo de relación más común. En este tipo de
relación, un registro de la Tabla A puede tener muchos registros coincidentes
en la Tabla B, pero un registro de la Tabla B sólo tiene un registro coincidente
en la Tabla A.
Un proveedor ...
... puede suministrar más de un producto ...
... pero cada producto tiene un único proveedor.
UNA RELACIÓN VARIOS A VARIOS
En una relación varios a varios, un registro de la Tabla A puede tener muchos
registros coincidentes en la Tabla B, y viceversa. Este tipo de relación sólo es
posible si se define una tercera tabla (denominada tabla de unión) cuya clave
principal (clave principal: uno o más campos (columnas) cuyos valores
identifican de manera exclusiva cada registro de una tabla. Una clave principal
no puede permitir valores Nulo y debe tener siempre un índice exclusivo.
Una clave principal se utiliza para relacionar una tabla con claves externas de
otras tablas.) consta de dos campos : las claves externas (clave externa: uno o
más campos de tabla (columnas) que hacen referencia al campo o campos de
clave principal de otra tabla. Una clave externa indica cómo están relacionadas
las tablas.) de las Tablas A y B. Una relación de varios a varios no es sino dos
relaciones de uno a varios con una tercera tabla. Por ejemplo, la tabla Pedidos
y la tabla Productos tienen una relación de varios a varios que se define
mediante la creación de dos relaciones de uno a varios con la tabla Detalles de
pedidos. Un pedido puede incluir muchos productos, y cada producto puede
aparecer en muchos pedidos.
Clave principal de la tabla Pedidos
Clave principal de la tabla Productos
Un pedido puede incluir muchos productos ...
... y cada producto puede aparecer en muchos pedidos.
UNA RELACIÓN UNO A UNO
En una relación uno a uno, cada registro de la Tabla A sólo puede tener un
registro coincidente en la Tabla B y viceversa. Este tipo de relación no es
habitual, debido a que la mayoría de la información relacionada de esta forma
estaría en una sola tabla. Puede utilizar la relación uno a uno para dividir una
tabla con muchos campos, para aislar parte de una tabla por razones de
seguridad o para almacenar información que sólo se aplica a un subconjunto
de la tabla principal. Por ejemplo, puede crear una tabla que registre los
empleados participantes en un partido de fútbol benéfico. Cada jugador de
fútbol de la tabla Jugadores de fútbol tiene un registro coincidente en la tabla
Empleados.
Cada jugador de fútbol tiene un registro coincidente en la tabla
Empleados.
Este conjunto de valores es un subconjunto del campo Id. de empleado
y la tabla Empleados.
QUE ES UNA ENTIDAD:
Una entidad es una clase generalizada de personas, lugares o cosas (objetos),
para los cuales se recopilan, almacenan y mantienen datos.
Se puede definir cono entidad a cualquier objeto, real o abstracto, que existe en
un contexto determinado o puede llegar a existir y del cual deseamos guardar
información, por ejemplo: “PROFESOR”, “CURSO”, “ALUMNO”. Las entidades
las podemos clasificar en:
1. En bases de datos, una entidad es la representación de un objeto o concepto
del mundo real que se describe en una base de datos.
Una entidad se describe en la estructura de la base de datos empleando un
modelo de datos.
Por ejemplo, nombres de entidades pueden ser: Alumno, Empleado, Artículo,
etc.
Cada entidad está constituida por uno o más atributos. Por ejemplo, la entidad
"Alumno" podría tener los atributos: nombre, apellido, año de nacimiento, etc.
QUE ES RELACIÓN:
En lugar de crear combinaciones entre tablas dentro de la consulta, podemos
definir estas relaciones en forma general para toda la base de datos.
Las relaciones así definidas permiten un mayor grado de control de la
integridad y la coherencia de los datos de las tablas entre sí.
QUE ES UN ATRIBUTO:
Los atributos son las propiedades que describen a cada entidad en un conjunto
de entidades.
Un conjunto de entidades dentro de una entidad, tiene valores específicos
asignados para cada uno de sus atributos, de esta forma, es posible su
identificación unívoca.
EXPLIQUE LAS DIFERENCIAS ENTRE LOS TÉRMINOS CLAVE PRIMARIA,
CLAVE CANDIDATA Y SUPERCLAVE.
CLAVE PRIMARIA:
Se define así a un campo o a una combinación de campos que identifica
de forma única a cada fila de una tabla.
Una clave primaria comprende de esta manera una columna o conjunto
de columnas.
No puede haber dos filas en una tabla que tengan la misma clave
primaria.
debe identificar unívocamente a todas las posibles filas de una tabla y no
solo a las filas que se encuentran en un momento determinado.
SUPERCLAVE
es un atributo o un conjunto de atributos que identifican de modo único
las tuplas de una relación.
CLAVE CANDIDATA
es una superclave en la que ninguno de sus subconjuntos es una
superclave de la relación.
2.9.-EXPLIQUE LAS DIFERENCIAS ENTRE CONJUNTO DE ENTIDADES
DÉBILES Y FUERTES.
CONJUNTO DE ENTIDADES:
Es un conjunto de entidades del mismo tipo. El conjunto de todas las personas
que tienen una cuenta en un banco determinado, por ejemplo pueden ser
definidas como el conjunto de entidades “clientes”.
ENTRE LAS ENTIDADES SE PUEDEN DIFERENCIAR DOS TIPOS:
Entidades Fuertes o Propias
Entidades Débiles o Regulares
LAS ENTIDADES FUERTES O PROPIAS
son aquellas cuyas ocurrencias son identificables por sí mismas.
Es decir, que los atributos que las identifican son propios de la entidad.
Las entidades fuertes se representan mediante un rectángulo.
Ejemplo: Alumno (identificable con el N° Matrícula).
Alumno
LAS ENTIDADES DÉBILES
Son aquellas cuyas ocurrencias son identificables solamente por estar
asociadas a otra u otras Entidades.
Es decir, que alguno de los atributos que las identifican se refiere a otra
entidad.
Las Entidades Débiles se representan mediante dos rectángulos.
QUÉ ES SQL SERVER:
SQL Server es un conjunto de objetos eficientemente almacenados. Los
objetos donde se almacena la información se denominan tablas, y éstas a su
vez están compuestas de filas y columnas. En el centro de SQL Server está el
motor de SQL Server, el cual procesa los comandos de la base de datos. Los
procesos se ejecutan dentro del sistema operativo y entienden únicamente de
conexiones y de sentencias SQL.
.
INSTALACION DE SQL SERVER:
Paso 1: seleccionamos la carpeta SQL server 2005
Paso 2: abrir la carpeta SQL server x86.
Materia
Paso 3: abrir la carpeta tolos.
Paso 4: ejecutamos la aplicación setup.
Paso 5: aceptamos la licencia de contrato de SQL server 2005 y damos clic en
siguiente.
Paso 6: dar clic en instalar.
Paso 7: damos clic en siguiente.
Paso 8: damos clic en siguiente para comenzar la instalación.
Paso 9: dar clic en siguiente.
Paso 10: poner el nombre y dar un clic en siguiente.
Paso 11: seleccionamos las dos primeras opciones y dar clic en siguiente.
Paso 12: seleccionamos named instance ponemos un nombre a la instancia y
dar clic en siguiente.
Paso 13: seleccionamos (use the built-in system account) y damos clic en
siguiente.
Paso14: seleccionamos (mixed mode (Windows authentication and SQL server
authentication)) poner una contraseña y dar clic en siguiente.
Paso 15: dar clic en siguiente.
Paso 16: seleccionamos las dos opciones y dar clic en siguiente.
Paso17: dar clic en install para comenzar la instalación.
Paso 18: dar clic en siguiente.
Paso 19: dar clic en finish para concluir la instalación.
COMO CREAR UNA BASE DE DATOS EN SQL SERVER
1. Abrimos el SQL
2. Damos clic derecho sobre la carpeta llamada Base de Datos y
seleccionamos la opción (nueva base de datos )
3. En donde nos desplegara una pantalla en donde en la parte superior nos
pedirá en nombre que deseemos darle a nuestra base de datos en este
caso la llamaremos sistemas en pondremos aceptar y quedara
registrada en la carpeta base de datos.
COMO CONECTAR EL DISEÑO DE UNA BASE DE ADATOS CON
SQL
1. Realizamos un diseño lógico en ERWIN que este caso lo aremos
con un diseño que relaciona (continentes, países, provincias,
cantones y ciudades).
2. Creamos una base de datos en SQL que se va a llamar
CONECXION
3. Luego crear un ODBC(para lo cual vamos a seguir los siguientes
pasos )
3.1 Nos dirigimos a panel de control y escogemos Herramientas
Administrativas
3.2 escogemos orígenes de datos (ODBC)
3.3 Escogemos DSN del sistema y agregar
3.4 Bajamos la fecha hasta escoger la opción SQL SERVER y
seleccionamos finalizar
3.5 Designamos un nombre para referirnos al origen de datos en este
caso utilizaremos conecxion.
3.6 Desconectamos el SQL para copiar el nombre del servidor con el
que deseemos conectarnos y presionamos siguiente.
3.7 establecer la siguiente como predeterminada es decir el
nombre que tiene en SQL que en este caso es conecxion.
3.8seleccionamos siguiente hasta que aparezca probar orígenes de datos
seleccionas aceptar y terminas de crear el ODBC
4. Procedemos a realizar el diseño físico nos dirigimos a Toll y seleccionamos
Derive New Model.
5. Te aparecerá una pantalla en donde escogerás la opción Physical y donde
dice Database escoger (ODBC Generic) y siguiente.
6. Aparecerá una pequeña ventana en donde seleccionaras en nombre que
pusiste al crear el ODBC para realizar la conexión y siguiente
6.hasta que aparezca la siguiente ventana en donde deberá seleccionar las
opciones (many to Many y SuperType) y seleccionar (Derive)
7.nuevamente nos dirigimos a Toll escogemos Forward Engineer y Schema
Generation
8. Aparecerá una ventana en donde escogeremos la opción Referential
Integrity y seleccionaremos Create/PK. y (Previun) y empezaremos a verificar
errores y seleccionamos Generate.
COMO CREAR UN BAKUP DE UNA BASE DE DATOS EN SQL
1. Nos dirigimos a la carpeta base de datos
2. Seleccionamos la base de datos de la que vamos a realizar el Bakup
3. Nos dirigimos a tareas y escogemos copia de seguridad
4. Aparecerá una ventana en donde deberás poner un nombre con el que
quieras que se llame.
COMO RESTAURAR UNA BAKUP
1. Creamos una base de datos en SQL
2. Damos clic derecho sobre la base que a creado.
2.1 Nos dirigimos a tareas
2.2 Restaurar
2.3 Y seleccionamos (base de datos)
COMO CREAR LA INGENIERÍA REVERSA ES DECIR RESTAURAR UNA
BASE DE DATOS EN SQL A ERWIN
3. Aparecerá una ventana en donde le indicara desde que lugar desea usted
restaurar la base de datos en este caso loa aremos desde un dispositivoy
la base que vamos a restaurar se llama UNIVERSISDAD.
4. Seleccionaremos agregar para encontrar la ubicación del archivo y se
desplegara la siguiente ventana y presionamos aceptar.
5. A continuación nos dirigimos a la parte superior izquierda y
seleccionamos (opciones) en las que marcaremos las 2 primeras opciones
de la parte derecha y seleccionamos aceptar y se restaurara la base de
datos con todas sus tablas y la información almacenada en la misma.
COMO REALIZAR LA INGENIERIA REVERZA ES DECIR COMO ENVIAR
UNA BASE DE DATOS DE SQL A ERWIN
1.En este caso vamos a enviar la misma base de datos que acabamos de
restaurar.
2. Primeramente creamos un ODBC que se va ha llamado REVERSA
3.Nos dirigimos a Toll.
3.1Reverse Engineer
4.Y se despliega una ventana en donde elegimos Logical/Physical y Next.
5.Aparece una ventana en la que el parte inferíos izquierda se encuentra la
opción (Model) la misma que desactivaremos y al realizar este acto de
desactivaran todas las demás, realizamos esto por que nosotros para este
caso solo necesitamos la opción (Table).
6. También seleccionaremos de la parte inferior derecha las opciones de
(PrimaryKey y Relation) y Next.
7. Aparecerá una pequeña pantalla en donde deberá selecciona en nombre
del ODBC que usted creo para la conexión y presionamos (Connect).
8. Al realizar esta acción aparecerá el diseño lógico y físico en ERWIN.
COMO CREAR TABLAS DENTRO DE SQL
Vamos a realizar un ejercicio en donde crearemos una base de datos que se va
a llamar Tablas en la cual vamos a crear la tabla alumno y prueba utilizando
(CREATE TABLE) la que permite crear una tabla dentro de SQL.
1. Nos dirigimos ala parte superior izquierda y seleccionamos (nueva
consulta).
2. Al lado derecho nos aparecerá una ventana en donde deberemos
ingresar el código para que se cree la tabla
3.este es el código que nos permitirá crear la tabla alumnos y prueba
create table alumno (cedula char (10), nombre varchar (20), apellido varchar
(20), detalle varchar (20))
create table evaluacion (descripcion varchar(20))
4.Este es el resultado
PARA INSERTAR POR MEDIO DE CODIGO INFORMACION A LAS TABLAS
LO HACEMOS DE LA SIGUIENTE MANERA
1.Este código sirve para agregar información a la tabla alumnos que creamos
anteriormente
Insert into alumno(cedula,nombre,apellido) values
('050343635','carolina','vinocunga')
2.Para visualizar el resultado nos dirigimos a tablas escogemos la tabla
alumnos damos clic derecho y seleccionamos la opción ( abrir tabla tabla)
3. Este será el resultado que observaremos
4.
COMO UTILIZAMOS EL SELECT PARA SACR TODA LA INFORMACION DE
UNA TABLA
1.Insertamos el siguiente código.
select * from alumno
2.Este será el resultado que observaremos
COMO UTILIZAMOS EL SELECT PARA PARA SACAR SOLO LOS
NOMBRES DE LA TABLA ESTUDIENTES
1.Este es el codigo que se debe ingresar
select nombre from alumno
2.Este será el resultado que observaremos
COMO UTILIZAMOS EL SELECT PARA PARA SACAR SOLO LOS
NOMBRES Y APELLIDOS DE LA TABLA ESTUDIENTES
1.Este es el codigo que se debe ingresar
select nombre,apellido from alumno
2.Este será el resultado que observaremos
COMO CREAR ALIAS
1.Este es un codigo utilisando alias en el cual desplegaremos como reultado la
cedula y el nombre de la tabla alumnos
select a.cedula,a.nombre from alumno a
2.Este será el resultado que observaremos
1.
PARA QUE UTILIZAMOS EL (GO) EN LAS CONSULTAS
Este nos permite ejecutar todas las lineas de codigo y desplegar los resultados
de cad uno de ellas
1.este seria el codigo
select * from alumno
go
select nombre from alumno
go
select nombre,apellido from alumno
go
select a.cedula,a.nombre from alumno a
2.Este seria el resultado que observemos
COMO UTILIZAR EL WHERE PARA REALIZAR CONSULTAS
Para esto bamos a utilizar la base de datos continemte
1.estas son la siguientes consultas
**la ciudad X a que pais pertenece y a que provincia**
select ci.nombre, pa.nombre, pro.nombre from paises pa, cantones ca,
provincias pro, ciudad ci
where
pa.Cod_pais = pro.Cod_pais and
pro.Cod_provincia = ca.Cod_provincia and
ca.Cod_CAnton = ci.Cod_CAnton and
ci.nombre = 'Pillaro'
2.El resultado es el siguiente
***QUE CIUDADES PERTENECEN AL CONTINENTE X******
select ci.nombre, con.nombre from paises pa, cantones ca, provincias pro,
ciudad ci, continentes con
where
con.Cod_Continente = pa.Cod_Continente and
pa.Cod_pais = pro.Cod_pais and
pro.Cod_provincia = ca.Cod_provincia and
ca.Cod_CAnton = ci.Cod_CAnton and
con.nombre = 'America'
2.El resultado es el siguiente
***el pais ECUADOR que ciudades tienen y en que continente esta******
select pa.nombre,ci.nombre, con.nombre from paises pa, cantones ca,
provincias pro, ciudad ci, continentes con
where
con.Cod_Continente = pa.Cod_Continente and
pa.Cod_pais = pro.Cod_pais and
pro.Cod_provincia = ca.Cod_provincia and
ca.Cod_CAnton = ci.Cod_CAnton and
pa.nombre = 'Ecuador'
2.El resultado es el siguiente
ORDER BY:
SQL cláusula ORDER BY se usa para ordenar los conjuntos de datos
recuperados de una base de datos SQL. El orden de los datos seleccionados
se puede hacer por una o más columnas en una tabla. Si queremos ordenar
nuestra tabla de los Usuarios por la columna FirstName, tendremos que utilizar
el siguiente ORDEN DEL instrucción SQL:
SELECT * FROM Users
ORDER BY FirstName
El resultado de la instrucción del ordey by anterior será la siguiente
Nombre Apellido Fecha de nacimiento
Email Ciudad
David Stonewall 01/03/1954 david@sql-tutorial.com San Francisco
John Smith 12/12/1969 john.smith@john-here.com
New York
Paul O'Neil 09/17/1982 paul.oneil@pauls-email.com
New York
Stephen Grant 03/03/1974 sgrant@sgrantemail.com Los Angeles
Susan Grant 03/03/1970 susan.grant@sql-tutorial.com
Los Angeles
Como usted puede ver las filas están ordenadas alfabéticamente por la
columna Nombre.
Usted puede usar ORDER BY para ordenar los datos recuperados por más de
una columna. Por ejemplo, si desea ordenar por tanto Apellido y Ciudad de
columnas, lo haría con la instrucción ORDER BY siguientes:
select nombre,apellido,sueldo from empleados order by nombre desc
select apellido,sueldo from empleados order by nombre desc
HAVING
La cláusula HAVING es opcional y se usa en combinación con la cláusula
group by. Es similar al caso de la cláusula, pero la cláusula que establece
restricciones Tras determinar qué registros se muestran después de que han
sido agrupados. Normalmente se coloca cerca de la final de la instrucción
SQL, y una instrucción SQL con la cláusula HAVING puede o no incluir la
cláusula group by.
La sintaxis de Vista es el siguiente:
SELECT col1, ... column_n, aggregate_function (expresión)
Table_name FROM
[WHERE condición]
[GROUP BY columna1, ... ] Column_n
HABIENDO condición
Ejemplo # 1
Seleccionar elemento, Sum (precio) como sumaTotal
De Antigüedades
Grupo por artículo
Habiendo Sum (precio)> 57
Esta consulta devuelve una lista de artículos diferentes y un campo llamado
'sumaTotal' que cuenta la suma resultado de antigüedades que faciliten a cada
tema. La cláusula HAVING sólo devolverá los elementos con suma resultado
superior a 57 dólares.
Ejemplo # 2
Seleccione SellerID, Conde (*) como Number_of_Sellers
De Antigüedades
Cuando BuyerID = 21
Grupo por SellerID
Habiendo Conde (*)> 1
Este ejemplo muestra una lista de id de vendedor, junto con su cuenta, pero
sólo cuando haya más de un vendedor con igual al 15 BuyerID.
BETWEEN
Utilizado
para especificar un intervalo de valores.
Mientras que la palabra clave IN ayuda a las personas a limitar el criterio de
selección para uno o más valores discretos, la palabra clave BETWEEN
permite la selección de un rango. La sintaxis para la cláusula BETWEEN es la
siguiente:
SELECT "nombre_columna"
FROM "nombre_tabla"
WHERE "nombre_columna" BETWEEN 'valor1' AND 'valor2'
Esto seleccionará todas las filas cuya columna tenga un valor entre 'valor1' y
'valor2'.
Por ejemplo, podríamos desear seleccionar la visualización de toda la
información de ventas entre el 06 de enero de 1999, y el 10 de enero de 1999,
en la Tabla Store_Information,
Tabla Store_Information
store_name Sales Date
Los Angeles 1500 € 05-Jan-1999
San Diego 250 € 07-Jan-1999
San Francisco 300 € 08-Jan-1999
Boston 700 € 08-Jan-1999
Ingresamos,
SELECT *
FROM Store_Information
WHERE Date BETWEEN '06-Jan-1999' AND '10-Jan-1999'
Tenga en cuenta que la fecha puede almacenarse en diferentes formatos
según las diferentes bases de datos. Esta guía de referencia simplemente elige
uno de los formatos.
Resultado:
store_name Sales Date
San Diego 250 € 07-Jan-1999
San Francisco 300 € 08-Jan-1999
Boston 700 € 08-Jan-1999
FUNCIONES
Sum:
Devuelve la suma del conjunto de valores contenido en un campo especifico de
una consulta. Su sintaxis es: Sum(expr)
En donde expr representa el nombre del campo que contiene los datos que
desean sumarse o una expresión que realiza un cálculo utilizando los datos de
dichos campos. Los operandos de expr pueden incluir el nombre de un campo
de una tabla, una constante o una función (la cual puede ser intrínseca o
definida por el usuario pero no otras de las funciones agregadas de SQL).
SELECT Sum(PrecioUnidad * Cantidad) AS Total FROM DetallePedido;
Count:
Calcula el número de registros devueltos por una consulta. Su sintaxis es la
siguiente: Count(expr)
En donde expr contiene el nombre del campo que desea contar. Los operandos
de expr pueden incluir el nombre de un campo de una tabla, una constante o
una función (la cual puede ser intrínseca o definida por el usuario pero no otras
de las funciones agregadas de SQL). Puede contar cualquier tipo de datos
incluso texto.
Aunque expr puede realizar un cálculo sobre un campo, Count simplemente
cuenta el número de registros sin tener en cuenta qué valores se almacenan en
los registros. La función Count no cuenta los registros que tienen campos null a
menos que expr sea el carácter comodín asterisco (*). Si utiliza un asterisco,
Count calcula el número total de registros, incluyendo aquellos que contienen
campos null. Count(*) es considerablemente más rápida que Count(Campo).
No se debe poner el asterisco entre dobles comillas ('*').
SELECT Count(*) AS Total FROM Pedidos;
Si expr identifica a múltiples campos, la función Count cuenta un registro sólo si
al menos uno de los campos no es Null. Si todos los campos especificados son
Null, no se cuenta el registro. Hay que separar los nombres de los campos con
ampersand (&).
SELECT Count(FechaEnvío & Transporte) AS Total FROM Pedidos;
AVG
Calcula la media aritmética de un conjunto de valores contenidos en un campo
Especificado de una consulta. Su sintaxis es la siguiente: Avg(expr)
En donde expr representa el campo que contiene los datos numéricos para los
que se desea calcular la media o una expresión que realiza un cálculo
utilizando los datos de dicho campo. La media calculada por Avg es la media
aritmética (la suma de los valores dividido por el número de valores). La función
Avg no incluye ningún campo Null en el cálculo.
SELECT Avg(Gastos) AS Promedio FROM Pedidos WHERE Gastos > 100;
Max, Min
Devuelven el mínimo o el máximo de un conjunto de valores contenidos en un
campo especifico de una consulta. Su sintaxis es:
Min(expr)
Max(expr)
En donde expr es el campo sobre el que se desea realizar el cálculo. Expr
pueden incluir el nombre de un campo de una tabla, una constante o una
función (la cual puede ser intrínseca o definida por el usuario pero no otras de
las funciones agregadas de SQL).
SELECT Min(Gastos) AS ElMin FROM Pedidos WHERE Pais = 'España';
SELECT Max(Gastos) AS ElMax FROM Pedidos WHERE Pais = 'España';
DE LA MISMA BASE ANTERIOR VAMOS A UTILIZAR LAS FUNCIONES
ANTES MENCIONADAS
select count(c.nombre)
from pais p,ciudad c,provincias pro,cantones ca,continente con
where
con.cod_cont=p.cod_cont and
p.cod_pais=pro.cod_pais and
pro.Cod_Provin=ca.Cod_Provin and
ca.Cod_Cant=c.Cod_Cant and
con.nombre='america'
select sum(c.poblacion)
from pais p,ciudad c,provincias pro,cantones ca,continente con
where
con.cod_cont=p.cod_cont and
p.cod_pais=pro.cod_pais and
pro.Cod_Provin=ca.Cod_Provin and
ca.Cod_Cant=c.Cod_Cant and
con.nombre='america'
select max(c.poblacion)
from pais p,ciudad c,provincias pro,cantones ca,continente con
where
con.cod_cont=p.cod_cont and
p.cod_pais=pro.cod_pais and
pro.Cod_Provin=ca.Cod_Provin and
ca.Cod_Cant=c.Cod_Cant and
con.nombre='america'
select min(c.poblacion)
from pais p,ciudad c,provincias pro,cantones ca,continente con
where
con.cod_cont=p.cod_cont and
p.cod_pais=pro.cod_pais and
pro.Cod_Provin=ca.Cod_Provin and
ca.Cod_Cant=c.Cod_Cant and
con.nombre='america'
A CONTINUCION MOSTRAREMOS UN EJEMPLO MAS SENCILLO DE
UTILIZAR ESTAS FUNCIONES
CAROLINA VINOCUNGA LASSO 250
LUIS TOAPANTA LATACUNGA 300
KARINA TOAQUIZ TANICUCHI 150
MARIA VIRACOCHA SALCEDO 280
NULL NULL NULL NULL
1.Utilizamos la funcion max para sacar el sueldo mas alto de un empleado
select max(sueldo) from empleado
2. Utilizamos la funcion min para sacar el sueldo mas bajo de un empleado
select min(sueldo) from empleado
3. Utilizamos la funcion min para sacar el sueldo mas bajo de un empleado
CONSUTAS EN SQL
INNER JOIN.
Consultas internas LEFT JOIN
RIGHT JOIN.
FULL JOIN.
Consultas externas CROSS JOIN
INNER JOIN: Con esta operación se calcula el producto cruzado de
todos los registros; así cada registro en la tabla A es combinado con
cada registro de la tabla B; pero sólo permanecen aquellos registros en
la tabla combinada que satisfacen las condiciones que se especifiquen.
Sintaxis:
SELECT *
FROM tabla 1 INNER JOIN tabla 2 ON tabla 1.campo 1 = tabla 2.campo 2
Ejemplo:
Empleados Departamento
Emp.apellido Emp.Id.dep
Solano 34
Jordán 33
Robinson 34
SELECT *
FROM Empleados INNER JOIN Departamento ON Empleado.Emp.Id.dep =
Departamento.Dep.Id.dep
Emp.apellido Emp.Id.dep Dep.nom.dep Dep.Id.dep
Solano 34 producción 34
Jordán 33 Ingeniería 33
Robinson 34 Ventas 34
FULL JOIN: Devuelve la unión de lo que dice la condición no combina
y no compara.
Dep.nom.dep Dep.Id.dep
producción 34
Ingeniería 33
Ventas 34
Sintaxis:
Select *
Full join nombre_tabla on condición
Ejemplo:
Empleados
Emp.apellido Emp.Id.dep
Solano 34
Jordán 33
Robinson 34
Departamento
Dep.nom.dep Dep.Id.dep
producción 34
Ingeniería 33
Ventas 34
Sistemas 31
Select *
Full join Departamento on Emp.Id.dep= Dep.Id.dep
Emp.apellido Emp.Id.dep Dep.nom.dep Dep.Id.dep
Solano 34 producción 34
Jordán 33 Ingeniería 33
Robinson 34 Ventas 34
Null null Sistemas 31
LEFT JOIN: (unión a la izquierda), une dos tablas de acorde con la
condición.
Sintaxis:
Select *
From tabla1 left join tabla2 on tabla1.campo1=tabla2.campo2
Ejemplo:
EMPLEADOS
C_i apellido oficina
11 Herrera 1
22 Parra 2
33 Suntasig 3
OFICINA
Select *
From Empleados left join Oficina on Empleados.oficina=Oficina.ofocina
Oficina nombre C_i Apellido
1 Rec. Hum. 11 Herrera
2 Contab. 22 Parra
3 Informática 33 Suntasig
4 márquetin null null
RIGHT JOIN: (unión a la derecha), une las dos tablas de acorde a la
condición.
Sintaxis:
Select *
From tabla1 right join tabla2 on tabla1.campo1=tabla2.campo2
Ejemplo:
oficina Nombre
1 Rec. Hum.
2 Contab.
3 Informática
4 márquetin
Empleados
C_i apellido oficina
11 Herrera 1
22 Parra 2
33 Suntasig 3
Oficina
Select *
From Empleados right join Oficina on Empleados.oficina=Oficina. oficina
C_i apellido oficina Nombre
11 Herrera 1 Rec. Hum.
22 Parra 2 Contab.
33 Suntasig 3 Informática
Null null 4 márquetin
CROSS JOIN: Une dos tablas, combina la tabla 1 con cada fila de la
tabla 2.
Sintaxis.
Select *
From tabla1 cross join tabla 2 ó from tabla 1, tabla 2
Ejemplo:
Empleados
C_i apellido oficina
11 Herrera 1
oficina Nombre
1 Rec. Hum.
2 Contab.
3 Informática
4 márquetin
22 Parra 2
33 Suntasig 3
Oficina
Select *
From Empleados cross join Oficina ó from Empleados 1, Oficina
C_i apellido oficina oficina Nombre
11 Herrera 1 1 Rec. Hum.
22 Parra 2 1 Rec. Hum.
33 Suntasig 3 1 Rec. Hum.
11 Herrera 1 2 Contab.
22 Parra 2 2 Contab.
33 Suntasig 3 2 Contab.
11 Herrera 1 3 Informática
22 Parra 2 3 Informática
33 Suntasig 3 3 Informática
11 Herrera 1 4 márquetin
22 Parra 2 4 márquetin
33 Suntasig 3 4 márquetin
Bibliografía:
http://www.duiops.net/manuales/access/access10.htm
http://es.wikipedia.org/wiki/Dato
http://www.babylon.com/definition/fila_(base_de_datos)/Spanish
http://es.wikipedia.org/wiki/Clave_primaria
oficina Nombre
1 Rec. Hum.
2 Contab.
3 Informática
4 márquetin
Recommended