Vous êtes sur la page 1sur 10

UNIVERSIDAD NACIONAL JOSE MARIA ARGUEDAS INGENIERIA DE SISTEMAS

TEORIA Y DISEO DE BASE DE DATOS I ING. RICHARD FLORES C. ING. IRMA HUAMANAHUI CH.

SQL SERVER 2008


1. COMANDOS Existen dos tipos de comandos SQL: DDL: que permiten crear y definir nuevas bases de datos, campos e ndices. DML: que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos. 1.1. Comandos DDL
COMANDO CREATE Utilizado DROP ALTER

DESCRIPCION para crear nuevas tablas, campos , procedimientos, funciones, etc. Empleado para eliminar tablas, campos , procedimientos, funciones, etc. Utilizado para modificar las tablas, campos , procedimientos, funciones, etc.

ndices, ndices, ndices,

1.2.

Comandos DML
COMANDO DESCRIPCION SELECT Utilizado para consultar registros de la base de datos que INSERT UPDATE DELETE

satisfagan un criterio Determinado. Utilizado para cargar lotes de datos en la base de datos en una nica operacin. Utilizado para modificar los valores de los campos y registros especificados. Utilizado para eliminar registros de una tabla de una base de datos.

1.3.

CLUSULAS Las clusulas son condiciones de modificacin utilizadas para definir los datos que desea seleccionar o manipular. CLAUSULA
FROM WHERE

DESCRIPCION Utilizada para especificar la tabla de la cual se van a seleccionar los registros. Utilizada para especificar las condiciones que deben reunir los registros que se van a seleccionar.

pg. 1

UNIVERSIDAD NACIONAL JOSE MARIA ARGUEDAS INGENIERIA DE SISTEMAS

TEORIA Y DISEO DE BASE DE DATOS I ING. RICHARD FLORES C. ING. IRMA HUAMANAHUI CH.

GROUP BY HAVING ORDER BY

Utilizada para separar los registros seleccionados en grupos especficos. Utilizada para expresar la condicin que debe satisfacer cada grupo. Utilizada para ordenar los registros seleccionados de acuerdo con un orden especfico.

1.4.

Operadores Lgicos OPERADOR AND

OR

NOT

USO Es el "y" lgico. Evala dos condiciones y devuelve un valor de verdad slo si ambas son ciertas. Es el "o" lgico. Evala dos condiciones y devuelve un valor de verdad si alguna de las dos es cierta. Negacin lgica. Devuelve el valor contrario de la expresin.

1.5.

Operadores de Comparacin
OPERADOR < > <> <= >= = BETWEEN LIKE LN USO

Menor que Mayor que Distinto de Menor o igual que Mayor o igual que Igual que Utilizado para especificar un intervalo de valores. Utilizado en la comparacin de un modelo. Utilizado para especificar registros de una base de datos.

1.6.

Funciones de Agregado Las funciones de agregado se usan dentro de una clusula SELECT en grupos de registros para devolver un nico valor que se aplica a un grupo de registros.
FUNCION DESCRIPCION

AVG COUNT SUM MAX

Utilizada para calcular el promedio de los valores de un campo determinado. Utilizada para devolver el nmero de registros de la seleccin. Utilizada para devolver la suma de todos los valores de un campo determinado. Utilizada para devolver el valor ms alto de un campo especificado

pg. 2

UNIVERSIDAD NACIONAL JOSE MARIA ARGUEDAS INGENIERIA DE SISTEMAS

TEORIA Y DISEO DE BASE DE DATOS I ING. RICHARD FLORES C. ING. IRMA HUAMANAHUI CH.

MIN

Utilizada para devolver el valor ms bajo de un campo especificado

1.7.

Ejemplos: Para los siguientes ejemplos hacer uso de la base de datos Academia Ejemplo1: Utilizando el Comando Create
CREATE TABLE SEDE_ACADEMIA --CREANDO UNA NUEVA TABLA ( COD_SEDE CHAR(6) PRIMARY KEY NOT NULL, NOM_SEDE CHAR(80) NOT NULL, UBICACION CHAR(100) NOT NULL ) DESPUES DE EJECUTAR EL CODIGO

Ejemplo 2: Utilizando el Comando DROP


DROP TABLE SEDE_ACADEMIA --- ELIMINANDO LA TABLA

Despus de compilar el cdigo se elimin la tabla sede_academia

Ejemplo 3: Utilizando el Comando ALTER


--1 CAMBIAR NOMBRE DE LA BASE DE DATOS

pg. 3

UNIVERSIDAD NACIONAL JOSE MARIA ARGUEDAS INGENIERIA DE SISTEMAS

TEORIA Y DISEO DE BASE DE DATOS I ING. RICHARD FLORES C. ING. IRMA HUAMANAHUI CH.

ALTER DATABASE ACADEMIA3 MODIFY NAME = ACADEMIA2; --- 2 CAMBIAR INFORMACION EN UNA TABLA ---- CAMBIA LA LONGITUD DEL DOMINIO DE CHAR(100) A CHAR(50) ALTER TABLE SEDE_ACADEMIA ALTER COLUMN UBICACION CHAR(50);

---- AGREGA UN NUEVO ATRIBUTO EN LA TABLA SEDE_ACADEMIA ALTER TABLE SEDE_ACADEMIA ADD TELEFONO varchar(9);

---- ELIMINA EL ATRIBUTO TELEFONO DE LA TABLA CLIENTES ALTER TABLE SEDE_ACADEMIA DROP COLUMN TELEFONO;

Ejemplo 4: Utilizando el Comando DML y Clausulas


--- 1:SELECCIONA TODOS LOS DATOS DE LA TABLA ALUMNO SELECT * FROM ALUMNO

pg. 4

UNIVERSIDAD NACIONAL JOSE MARIA ARGUEDAS INGENIERIA DE SISTEMAS

TEORIA Y DISEO DE BASE DE DATOS I ING. RICHARD FLORES C. ING. IRMA HUAMANAHUI CH.

---2: SELECCIONA ALGUNOS CAMPOS DE LA TABLA ALUMNO SELECT COD_ALUMNO, NOM_ALUMNO, APE_ALUMNO FROM ALUMNO

---3: SELECCIONA ALGUNOS CAMPOS DE LA TABLA ALUMNO SIEMPRE Y CUANDO EL NOMBRE DEL ALUMNO SEA DAMIAN SELECT COD_ALUMNO, NOM_ALUMNO, APE_ALUMNO FROM ALUMNO WHERE NOM_ALUMNO='DAMIAN'

---4: SELECCIONA EL GRADO DEL PROFESOR Y REALIZA UN CONTEO DE LA CANTIDAD DE PROFESORES POR GRADO Y LOS AGRUPA DE ACUERDO AL GRADO SELECT GRT_PROFESOR, COUNT(CODIGO_PROFESOR)AS [CANTIDAD DE PROFESORES] FROM PROFESOR GROUP BY GRT_PROFESOR;

pg. 5

UNIVERSIDAD NACIONAL JOSE MARIA ARGUEDAS INGENIERIA DE SISTEMAS

TEORIA Y DISEO DE BASE DE DATOS I ING. RICHARD FLORES C. ING. IRMA HUAMANAHUI CH.

---5: SELECCIONA EL GRADO DEL PROFESOR Y REALIZA UN CONTEO DE LA CANTIDAD DE PROFESORES POR GRADO Y LOS AGRUPA POR GRADO SIEMPRE Y CUANDO LA CANTIDAD DE PROFESORES POR GRADO SEA MENOR A 2 SELECT GRT_PROFESOR, COUNT(CODIGO_PROFESOR)AS [CANTIDAD DE PROFESORES] FROM PROFESOR GROUP BY GRT_PROFESOR HAVING COUNT(GRT_PROFESOR)<2;

---6: SELECCIONA LOS CURSOS ORDENADOS POR EL NOMBRE SELECT * FROM CURSO ORDER BY NOM_CURSO

---7: SELECCIONA LOS CURSOS ORDENADOS POR EL COSTO TOTAL DEL CURSO EN FORMA DESCENDENTE SELECT COD_CURSO, NOM_CURSO, (HORAS*PRECIO)AS [COSTO TOTAL DEL CURSO] FROM CURSO ORDER BY [COSTO TOTAL DEL CURSO] DESC;

Ejemplo 5: Utilizando Operadores Lgicos y de Comparacin


---1 CONSULTA DE LOS CURSOS QUE SU PRECIO SE ENCUENTRE ENTRE 20 Y 40 SOLES SELECT COD_CURSO, NOM_CURSO, PRECIO FROM CURSO WHERE PRECIO BETWEEN 20 AND 40;

pg. 6

UNIVERSIDAD NACIONAL JOSE MARIA ARGUEDAS INGENIERIA DE SISTEMAS

TEORIA Y DISEO DE BASE DE DATOS I ING. RICHARD FLORES C. ING. IRMA HUAMANAHUI CH.

---2 CONSULTA DE LOS CURSOS QUE SUS HORAS SEAN MENORES O IGUALES A 5 SELECT COD_CURSO, NOM_CURSO,HORAS, PRECIO FROM CURSO WHERE HORAS <=5

--3 CONSULTA DE LOS CURSOS QUE SUS NOMBRES EMPPIECEN CON LA LETRA I SELECT COD_CURSO, NOM_CURSO,HORAS, PRECIO FROM CURSO WHERE NOM_CURSO LIKE'I%';

--4 CONSULTA DE LOS ALUMNOS QUE NO VIVEN EN ANDAHUAYLAS SELECT COD_ALUMNO, APE_ALUMNO, NOM_ALUMNO,DIR_ALUMNO FROM ALUMNO WHERE NOT DIR_ALUMNO = 'ANDAHUAYLAS';

--5 CONSULTA DE LOS ALUMNOS QUE

VIVEN EN ANDAHUAYLAS O EN TOTORAL

SELECT COD_ALUMNO, APE_ALUMNO, NOM_ALUMNO,DIR_ALUMNO FROM ALUMNO WHERE DIR_ALUMNO = 'ANDAHUAYLAS' OR DIR_ALUMNO ='TOTORAL'

pg. 7

UNIVERSIDAD NACIONAL JOSE MARIA ARGUEDAS INGENIERIA DE SISTEMAS

TEORIA Y DISEO DE BASE DE DATOS I ING. RICHARD FLORES C. ING. IRMA HUAMANAHUI CH.

Ejemplo 6: Funciones de agregado

2. Algebra Relacional y Sql Server 2008 2.1.1. Operadores fundamentales: Conjunto de operaciones que toman como argumentos relaciones y retornan una nueva relacin. Las operaciones fundamentales del Algebra relacional son: Seleccin Proyeccin Union Diferencia Producto cartesiano Renombramiento Ejemplos: Ejemplo 1: seleccin
CURSOS CUYO PRECIO ES MAYOR A 20 Y SUS HORAS MENORES A 5

_PRECIO>10^HORAS<5(CURSO) SQL:
SELECT * FROM CURSO WHERE PRECIO>10 AND HORAS<5;

Ejemplo 2: Proyeccin Cursos pero solo con el atributo cdigo: _COD_CURSO(CURSO)

pg. 8

UNIVERSIDAD NACIONAL JOSE MARIA ARGUEDAS INGENIERIA DE SISTEMAS

TEORIA Y DISEO DE BASE DE DATOS I ING. RICHARD FLORES C. ING. IRMA HUAMANAHUI CH.

SQL:
SELECT COD_CURSO FROM CURSO;

Ejemplo 3: unin
RETORNA LOS NOMBRES DE LOS ALUMNOS Y LOS NOMBRES DE LAS ESPECIALIDADES

_NOM_ALUMNO(ALUMNO) _DESCRIPCION(ESPECIALIDAD)
SQL: SELECT NOM_ALUMNO FROM ALUMNO UNION SELECT DESCRIPCION FROM ESPECIALIDAD;

Ejemplo 4: Profesores y sus cursos a cargo:


SELECT P.NOM_PROFESOR, NOM_CURSO

pg. 9

UNIVERSIDAD NACIONAL JOSE MARIA ARGUEDAS INGENIERIA DE SISTEMAS

TEORIA Y DISEO DE BASE DE DATOS I ING. RICHARD FLORES C. ING. IRMA HUAMANAHUI CH.

FROM PROFESOR P, CLASE CL INNER JOIN CURSO C ON CL.COD_CURSO =C.COD_CURSO WHERE CL.CODIGO_PROFESOR= P.CODIGO_PROFESOR;

Tarea:
1: CONSULTA DE LOS CURSOS QUE SU COSTO TOTAL 240 SOLES SE ENCUENTRE ENTRE 175 Y

2: LISTAR A TODOS LOS CURSOS QUE SUS NOMBRES TENGAN ESPACION VACIOS Y QUE TERMINEN EN I.

pg. 10