Sei sulla pagina 1di 100

Instalación y Configuración de Sql server 2014 - Bases de

Datos en Microsoft Sql Server 2014 (1-35)


Contenido del Curso de Bases de datos en Microsoft SQLServer 2014

 Instalación y Configuración, Seguridad


 Gestión de Base de Datos
o Estructura de Una Base de datos
o Archivos y Grupos Físicos de Bases de Datos
o Esquemas, Tablas, Campos, Tipos de datos
o Relaciones, Llaves primarias y Foráneas
o Restricciones Unique, Check, Default
o Separar y Adjuntar Base de Datos
o Backup y Restauración de Base de Datos
 LDD Lenguaje de Manipulación de Datos
o Create, Alter, Drop
 DML Lenguaje de Manipulación de Datos
o Insert Into, Update, Delete
o Select, Group By, Having, Union
 Programación Transact SQL
o Variables, Funciones Cast y Convert
o Estructuras de Control Condicionales e Iterativas o repetitivas
o Procedimientos Almacenados
o Cursores, Triggers, Tablas de Referencia Cruzada
o

¿Qué es una Base de Datos?


Es un conjunto de Información relacionada sobre un tema en particular, organizada de alguna
forma tal que suministra una base o fundamento para procedimientos, como la recuperación o
consulta de la Información, la elaboración de conclusiones en base a la data y la toma de
desiciones de una organización.
Se dice que cualquier conjunto de Información que sirva a lo nombrado anteriormente se le
calificará como base de Datos, aún cuando la información no esté almacenada en algún medio
Informático.
Sistemas de Gestión de Base de Datos (SGBD)
Son aplicaciones que permiten la administración de los datos almacenados en una o varias Bases
de datos.
 Independencia de los datos y los programas
 Minimización de la Redundancia
 Integración y Sincronización de las Bases de Datos
 Facilidad de Manipulación y Recuperación de la Información
 Seguridad y Control Centralizado.
SQL Server 2014
Microsoft SQLServer es un Sistema para la Gestión de Base de Datos basado en el Modelo
Relacional. Sus lenguajes para consultas son Transact-SQL y Ansi SQL.
Presenta Un entorno gráfico de administración de los Objetos del motor de base de datos, que
permite el uso de comando DDL y DML gráficamente.

Crear Bases Datos en Sql server 2014 - Bases de Datos en


Microsoft Sql Server 2014 (2-35)
Buen día amigos de IncanatoIt, en este artículo veremos cómo implementar una base de datos
en SQL Server 2014.
Base de Datos en Sql Server
Al instalar SQLServer también se registran Bases de datos que administran diferentes aspectos
del servidor de Base de Datos.
MASTER: Es el núcleo y contiene Información vital de la Instancia de Sqlserver, información de
la administración de las diferentes bases de datos.
TEMPDB: Base de datos temporal que brinda espacios para realizar algunas operaciones
.MODEL: Es una plantilla para todas las bases de datos creadas en el servidor, se implementa
cuando se ejecuta el comando CREATE DATABASE.
MSDB: Empleada por SQL Server Agent, guarda información de servicios de automatización,
historial de copias de seguridad, tareas, alertas, planes de mantenimiento entre otros registros.
Estructura de Base de Datos en Sql Server
Tablas: La tabla es el primer objeto de una base de datos y se organiza en filas y columnas, una
fila equivale a un registro y las columnas definen los campos del registro, los campos se definen
sobre un tipo de datos.
Campos: Representa los Atributos de una entidad o tabla.
 Campo Clave: Es el campo que representa un valor único e identifica a un registro de
la tabla.
 Campo Foráneo: Campo que une a otra entidad formando una extensión de la tabla
fuente.
 Registro: Representa el Conjunto de valores por cada campo de una misma fila.
 Dato: Es un valor que no representa nada mientras no se une a otros datos.

Estructura de una Base de Datos en Sql Server


Estructura de una Tabla en Sql Server

Tablas, campos, Tipos de Datos en sql server 2014 Bases


de Datos en Microsoft Sql Server 2014 (3-35)
Ejercicio Propuesto
Se desea implementar un sistema web para gestionar la reserva de vuelos; que permita al
usuario registrar sus reservas de vuelos y hacer consultas, además de poder comprar los boletos
de viaje de manera remota, sin la necesidad de recurrir a una agencia de viaje.
El sistema web debe de mostrar una interfaz describiendo los servicios ofrecidos junto con la
opción para registrarse si es la primera vez que accede a ella, o si ya se encuentra registrado
acceder por medio de su usuario (email) y su clave.
Una vez registrado el usuario este podrá acceder a los siguientes procesos:
 Consulta de Vuelos
 Por Horarios de Vuelos
 Por Tarifas de Vuelos
 Información de Vuelos
 Reserva de Vuelos
 Compra de Boletos de viaje

Esquema de Archivos en Sql Server


Tipos de Datos en Sql Server 2014

Tipo de Datos Carácter


Char: Los datos deben de tener una longitud fija hasta 8Kb. Ejemplo: Si queremos almacenar
categorías por ejemplo A, B, C …Utilizaremos Char(1)
Varchar: Puede variar en el número de carácteres, es decir el valor asignado no es fijo, aquí
SQL administra los espacios en blanco y los optimiza.
Ejemplo en un Varchar(15) ocupará menos espacio el dato “Ana” que “Juan Carlos”.
Tipo de Datos Enteros
Int: Números enteros desde
-2 31 (-2 147 483 648) a 2 31-1 (2 147 483 647).
Tipos de Datos Fecha
Date: Tipo de dato que muestra la fecha en el siguiente formato 07-07-2014.
Tipo de Datos Decimal
Decimal: Tipo de datos que se utiliza para almacenar números decimales que pueden tener
hasta 38 dígitos.
Tipo de Datos Monetario
Money: Cantidad monetaria positiva o negativa.
Propiedades de Datos
Propiedad NULL: Hay dos formas de expresar el término NULL, al implementarlo como NULL
estamos indicando que el contenido de dicha columna no es obligatorio, si se necesita especificar
que el campo es obligatorio se implementará con NOT NULL.
Propiedad IDENTITY: Propiedad sólo aplicada a campos numéricos, ya que define un
autoincremento automático de valores.

Relaciones entre tablas en Sql Server 2014 Bases de Datos


en Microsoft Sql Server 2014 (4-35)
Relaciones
El modo de relacionar registros entre tablas es por tanto mediante referencias, para lo cual se
usan los identificadores definidos como claves primarias y foráneas.
Clave primaria
En el diseño de bases de datos relacionales, se llama clave primaria (Primary Key) 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.
Una clave primaria debe identificar a todas las posibles filas de una tabla y no únicamente 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 guías telefónicas y diccionarios no
pueden usar nombres o palabras o números del sistema decimal de Dewey como claves
candidatas, porque no identifican unívocamente números de teléfono o palabras.

Clave foránea
En el contexto de bases de datos relacionales, una clave foránea o clave ajena (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 o referendo).
Diagrama Relacional Base de Datos en Sql Server 2014
Dentro de las opciones que nos ofrece nuestra base de datos, encontramos la opción Diagrama
de la Base de Datos, que nos permite realizar las relaciones de las tablas en forma Gráfica. Para
acceder a esta opción le damos click derecho y crearemos un nuevo Diagrama de Base de Datos.
Imagen 1: Diagrama relacional de la Base de datos del Curso.

Lenguaje Sql, Lenguaje DDL crear Base de Datos - Bases


de Datos en Microsoft Sql Server 2014 (5-35)
Lenguaje SQL

El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones de


agregados. Estos elementos se Combinan en las instrucciones para crear, actualizar y Manipular
las base de datos.
Existen 2 tipos de Comandos SQL:
Lenguaje de Definición de Datos (DDL), comandos para crear y definir nuevas base de datos,
tablas, campos e índices.
Lenguaje de Manipulación de Datos (DML), comandos para insertar, modificar y eliminar
registros, así como ordenar, filtrar y extraer información de la base de datos.
1. Lenguaje de Definición de Datos
SENTENCIA CREATE (Comando de Creación de Objetos de la Base de Datos): Permite crear
base de datos, tablas, desencadenadores, procedimientos, funciones, vistas e Índices de una
base de Datos.
SENTENCIA ALTER (Comando de Modificación de Objetos de la Base de Datos): Permite la
modificación de un objeto asociado a una base de Datos, puede modificar archivos, grupo de
archivos, cambiar atributos de un Objeto.
SENTENCIA DROP (Comando de Eliminación de Objetos de la Base de Datos): Permite la
eliminación de un objeto asociado a una Base de Datos.
Archivos de Base de Datos

Código para Implementar la Base de Datos y los Archivos .MDF y .LDF


--Verificamos que la base de datos no este implementada para implementarla

IF DB_ID('DBRESERVAM') IS NOT NULL


BEGIN
USE MASTER
DROP DATABASE DBRESERVAM
END
--creamos la base de datos
CREATE DATABASE DBRESERVAM
ON PRIMARY (
NAME='DBRESERVA_MDF',
FILENAME='C:\Sqlserver-BaseDatos2\DBRESERVA.MDF',
SIZE=10MB,
MAXSIZE=40MB,
FILEGROWTH=5MB
),
(
NAME='DBRESERVA2_MDF',
FILENAME='C:\Sqlserver-BaseDatos2\DBRESERVA2.MDF',
SIZE=5MB,
MAXSIZE=30MB,
FILEGROWTH=5%
)
LOG ON (
NAME='DBRESERVA_LOG',
FILENAME='C:\Sqlserver-BaseDatos2\DBRESERVA2.LDF',
SIZE=4MB,
MAXSIZE=20MB,
FILEGROWTH=10%
)
GO
--ACTIVAMOS LA BASE DE DATOS PARA EMPEZAR A TRABAJAR CON ELLA
USE DBRESERVAM
GO
Lenguaje DDL Tablas, campos, Tipos de Datos - Bases de
Datos en Microsoft Sql Server 2012 (6-35)
Tipos de Datos en Sql Server 2014
Tipo de Datos Carácter
Char: Los datos deben de tener una longitud fija hasta 8Kb. Ejemplo: Si queremos almacenar
categorías por ejemplo A, B, C …Utilizaremos Char(1)
Varchar: Puede variar en el número de carácteres, es decir el valor asignado no es fijo, aquí
SQL administra los espacios en blanco y los optimiza.
Ejemplo en un Varchar(15) ocupará menos espacio el dato “Ana” que “Juan Carlos”.
Tipo de Datos Enteros
Int: Números enteros desde
-2 31 (-2 147 483 648) a 2 31-1 (2 147 483 647).
Tipos de Datos Fecha
Date: Tipo de dato que muestra la fecha en el siguiente formato 07-07-2014.
Tipo de Datos Decimal
Decimal: Tipo de datos que se utiliza para almacenar números decimales que pueden tener
hasta 38 dígitos.
Tipo de Datos Monetario
Money: Cantidad monetaria positiva o negativa.
Propiedades de Datos
Propiedad NULL: Hay dos formas de expresar el término NULL, al implementarlo como NULL
estamos indicando que el contenido de dicha columna no es obligatorio, si se necesita especificar
que el campo es obligatorio se implementará con NOT NULL.
Propiedad IDENTITY: Propiedad sólo aplicada a campos numéricos, ya que define un
autoincremento automático de valores.
Implementando las tablas Utilizando Lenguaje de Definición de Datos DDL

--ACTIVAMOS LA BASE DE DATOS PARA EMPEZAR A TRABAJAR CON ELLA


USE DBRESERVAM
GO

--IMPLEMENTANDO LAS TABLAS DE LA BASE DATOS

--TABLA PAÍS
CREATE TABLE pais (
idpais char(4) not null primary key,
nombre varchar(30) not null unique
)
go

--TABLA PASAJERO
CREATE TABLE pasajero (
idpasajero char(8) not null primary key,
nombre varchar(20) not null,
apaterno varchar(20) not null,
amaterno varchar(20) not null,
tipo_documento varchar(30) not null,
num_documento varchar (12) not null,
fecha_nacimiento date not null,
idpais char(4) not null,
telefono varchar(15) null,
email varchar(50) not null unique,
clave varchar(20) not null
)
go

--TABLA AEROPUERTO
CREATE TABLE aeropuerto (
idaeropuerto char(5) not null,
nombre varchar(50) not null,
idpais char(4) not null
)
go

--TAMBIEN SE PUEDE AGREGAR LA LLAVE PRIMARIA DESPUES DE CREAR LA TABLA


ALTER TABLE aeropuerto
ADD CONSTRAINT pk_aeropuerto_idaeropuerto
PRIMARY KEY NONCLUSTERED (IDAEROPUERTO)
GO
--TAMBIEN VOY A CREAR EL CONSTRAINT DE CAMPO ÚNICO
ALTER TABLE aeropuerto
ADD CONSTRAINT uq_aeropuerto_nombre
UNIQUE(idaeropuerto)
GO

--TABLA AEROLÍNEA
CREATE TABLE aerolinea (
idaerolinea int not null primary key,
ruc char(11) not null unique,
nombre varchar(40) not null unique
)
go
--TABLA AVIÓN
CREATE TABLE avion (
idavion char(5) not null primary key,
idaerolinea int not null,
fabricante varchar(40) null,
tipo varchar(30) null,
capacidad int not null
)
go

Restricción Unique, Check, Default Sql Server 2014 (7-


35) Bases Datos en Microsoft Sql Server 2014
Restricciones de los Campos
Unique: Permite determinar que los valores registrados en una misma columna no sean
idénticos, es decir se mantengan únicos. Por ejemplo el email de una persona es un campo
único.
Check: Permite restringir el rango de valores que pueden estar permitidos ingresar en una o
más columnas de una tabla.
Default: Permite registrar un dato en un campo por defecto cuando el usuario no ingresa ningún
valor, la propiedad del campo de la tabla necesariamente tiene que ser Null.
Ejemplo se puede Utilizar para los campos de tipo Date (fecha), cuando el usuario no ingresa
ninguna fecha que se asigne la fecha actual.
Implementado las tablas faltantes de nuestro ejercicio Propuesto Dbreserva e
implementando las restricciones
--Eliminaré la tabla avión y la creare de nuevo pero dejando un campo
menos
drop table avion
--creando de nuevo la tabla avion
CREATE TABLE avion (
idavion char(5) not null primary key,
idaerolinea int not null,
fabricante varchar(40) null,
tipo varchar(3) null
)
go

--voy agregar nuevamente la capacidad


ALTER TABLE AVION
ADD capacidad int not null
go
--eliminaré nuevamente capacidad
--ALTER TABLE avion
--drop column capacidad
--go
--voy a modificar la columna tipo
ALTER TABLE avion
ALTER COLUMN tipo varchar(30) not null
go
--TABLA ASIENTO
CREATE TABLE asiento (
idasiento int not null primary key,
letra char(2) not null,
fila int not null
)
go
--TABLA TARIFA
CREATE TABLE tarifa(
idtarifa int not null primary key,
clase varchar(20) not null unique,
precio money not null,
impuesto money not null
)
go
--TABLA RESERVA
CREATE TABLE reserva(
idreserva int not null primary key,
costo money not null,
fecha date NULL,
observacion varchar(200) null
)
go
--AGREGAREMOS UNA RESTRICCIÓN DEFAULT A LA FECHA PARA QUE LA FECHA
POR DEFECTO SEA LA FECHA ACTUAL
ALTER TABLE reserva
ADD CONSTRAINT DFL_RESERVA_FECHA
DEFAULT GETDATE() FOR fecha
go

--TABLA VUELO
CREATE TABLE vuelo(
idasiento int not null,
idaeropuerto char(5) not null,
idreserva int not null,
idavion char(5) not null,
idtarifa int not null
)
go
--IMPLEMENTANDO LAS LLAVES PRIMARIAS DE LA TABLA VUELO
ALTER TABLE VUELO
ADD PRIMARY KEY NONCLUSTERED (idasiento,idaeropuerto,idreserva,idav
ion)
go
--TABLA PAGO
CREATE TABLE pago(
idpago int not null primary key identity,
idreserva int not null,
idpasajero char(8) not null,
fecha date DEFAULT GETDATE(),
monto money not null,
tipo_comprobante varchar(20) not null,
num_comprobante varchar(15)not null,
impuesto decimal (5,2) not null
)
go

--AGREGARE UNA RESTRICCIÓN CHECK PARA SOLO INGRESAR FECHAS IGUALES


O MENORES A LA FECHA ACTUAL
ALTER TABLE pago
ADD CONSTRAINT CHK_PAGO_FECHA
CHECK (fecha<=getdate())

go

Relaciones entre tablas Sql Server 2014 Bases de Datos en


Microsoft Sql Server 2014 (8-35)
Relaciones
El modo de relacionar registros entre tablas es por tanto mediante referencias, para lo cual se
usan los identificadores definidos como claves primarias y foráneas.
Clave primaria
En el diseño de bases de datos relacionales, se llama clave primaria (Primary Key) 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.
Una clave primaria debe identificar a todas las posibles filas de una tabla y no únicamente 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 guías telefónicas y diccionarios no
pueden usar nombres o palabras o números del sistema decimal de Dewey como claves
candidatas, porque no identifican unívocamente números de teléfono o palabras.
Clave foránea
En el contexto de bases de datos relacionales, una clave foránea o clave ajena (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 o referendo).
Diagrama Relacional Base de Datos en Sql Server 2014
En el vídeo mostrado a continuación, se describe cómo crear relaciones de clave externa en SQL
Server 2014 mediante código Transact-SQL. Cuando se asocian filas de una tabla con filas de
otra tabla, se crea una relación entre las dos tablas.

Código que permite crear el diagrama entidad relación de nuestra base de datos Propuesta

--IMPLEMENTADO LAS LLAVES FORÁNEAS


--Relación Entre la tabla pasajero y país
ALTER TABLE pasajero
ADD CONSTRAINT FK_pasajero_pais
FOREIGN KEY (idpais) REFERENCES pais (idpais)
go

--Relación entre la tabla aeropuerto país


ALTER TABLE aeropuerto
ADD CONSTRAINT FK_aeropuerto_pais
FOREIGN KEY(idpais) REFERENCES pais (idpais)
go

--Relación entre la tabla pago y pasajero


ALTER TABLE pago
ADD CONSTRAINT FK_pago_pasajero
FOREIGN KEY (idpasajero) REFERENCES pasajero (idpasajero)
go

--Relación entre la tabla pago y reserva


ALTER TABLE pago
ADD CONSTRAINT fk_pago_reserva
FOREIGN KEY (idreserva) REFERENCES reserva(idreserva)
go

--Relación entre la tabla avión y aerolínea


ALTER TABLE avion
ADD CONSTRAINT FK_avion_aerolinea
FOREIGN KEY (idaerolinea) REFERENCES aerolinea(idaerolinea)
go

--Relación entre la tabla vuelo y asiento


ALTER TABLE vuelo
ADD CONSTRAINT FK_vuelo_asiento
FOREIGN KEY (idasiento) REFERENCES asiento(idasiento)
go

--Relación entre la tabla vuelo y reserva


ALTER TABLE vuelo
ADD CONSTRAINT FK_vuelo_reserva
FOREIGN KEY (idreserva) REFERENCES reserva(idreserva)
go

--Relación entre la tabla vuelo y avión


ALTER TABLE vuelo
ADD CONSTRAINT FK_vuelo_avion
FOREIGN KEY (idavion) REFERENCES avion(idavion)
go

--Relación entre la tabla vuelo y tarifa


ALTER TABLE vuelo
ADD CONSTRAINT FK_vuelo_tarifa
FOREIGN KEY (idtarifa) REFERENCES tarifa(idtarifa)
go

--Relación entre la tabla vuelo y aeropuerto


ALTER TABLE vuelo
ADD CONSTRAINT FK_vuelo_aeropuerto
FOREIGN KEY (idaeropuerto) REFERENCES aeropuerto(idaeropuerto)
go

Separar y adjuntar Base de datos Sql Server 2014 - Bases


de Datos en Microsoft Sql Server 2014 (9-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014
Buen día amigos de IncanatoIt, en este artículo Se muestra de manera detallada como separar
una base de datos del Motor Sql Server para poder modificar su ubicación física, utilizando el
asistente de Microsoft Sql Server Management y también el procedimiento almacenado
SP_DETACH_DB, después se vuelve adjuntar la base de datos nuevamente al motor de base de
datos utilizando Microsoft Sql Server Management Studio.

Curso completo de Microsoft Sql Server 2014, Lenguaje de Definición de Datos, Relaciones en
Sql Server, Separar y adjuntar base de datos en Sql Server.

Puedes seguir el curso Completo desde:


https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:
https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Separar y Adjuntar Base de Datos

Cuando creamos una base de datos el servidor la protege de gestiones desde el exterior, eso
quiere decir que desde el explorador de windows no se podrá eliminar ni cambiar de nombre a
la DB.

Para poder cambiar de ubicación física o modificar el nombre de la Base de Datos, el Motor
propone algunas políticas de gestión proporcionando funciones, sentencias e intrucciones para
dicho control.

Separar Base de Datos DETACH

Procedimiento Almacenado SP_DETACH_DB (Permite separar una Base de Datos del Servidor
Actual):
use master
SP_DETACH_DB @DBNAME=‘DBRESERVA’
GO
Adjuntar Base de Datos

Utilizaremos el Asistente de Microsoft SQL Server Management Studio.


Lo veremos en el vídeo mostrado a continuación.

Separar y adjuntar Base de datos Sql Server 2014 (9-35) Bases de Datos en Microsoft Sql
Server 2014
Lenguaje de Manipulación de datos Sql Server - Bases de
Datos en Microsoft Sql Server 2014 (10-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo se explica la manera de insertar registros en
una tabla en sql server 2014 utilizando el Asistente de Microsoft Sql Server Management
Studio 2014.
Continuamos con este videocurso completo de base de datos en sql server 2014, se explica de
manera detallada el lenguaje de Manipulación de Datos DML, las sentencias Insert Into,
Update, Delete, Select, Merge, Bulk Insert.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Lenguaje SQL

El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones de


agregados. Estos elementos se Combinan en las instrucciones para crear, actualizar y Manipular
las base de datos.

Existen 2 tipos de Comandos SQL:


Lenguaje de Definición de Datos (DDL), comandos para crear y definir nuevas base de datos,
tablas, campos e índices.

Lenguaje de Manipulación de Datos (DML), comandos para insertar, modificar y eliminar


registros, así como ordenar, filtrar y extraer información de la base de datos.

2. Lenguaje de Manipulación de Datos (DML)

El lenguaje de Manipulación de Datos (DML) es un término usado para recuperar y trabajar con
datos en Sql Server, incluye instrucciones para agregar, modificar, consultar o quitar datos de
una base de Datos en Sql Server.

Las siguientes sentencias son de categoría DML:

 INSERT
 UPDATE
 DELETE
 SELECT
 MERGE
 BULK INSERT

Ejemplos: Insertar Registros en las Tablas

 Aerolínea
 País
 Pasajero
 Reserva
 Pago
 Tarifa
 Aeropuerto

En el video siguiente se muestra como ingresar Datos pero utilizando el asistente gráfico de Sql
Server Magement Studio 2014.

Lenguaje de Manipulación de datos Sql Server (10-35) Bases de Datos en Microsoft Sql
Server 2014
Insertar registros en tablas Sql Server 2014 - Bases de
Datos en Microsoft Sql Server 2014 (11-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt En este capítulo se explica la manera de insertar registros en
una tabla en sql server 2014 utilizando el Lenguaje de manipulación de Datos DML en
Microsoft Sql Server 2014, se utiliza la sentencia Insert Into para registrar datos en tablas en
Base de datos en Sql Server 2014.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

SENTENCIA INSERT (Insertar Registros):

Permite agregar una nueva fila a una tabla o vista.

INSERT [INTO]
[ESQUEMA] TABLA O VISTA [(Lista de columnas)]

[VALUES] ('Lista de valores')

SENTENCIA INSERT

Ejemplos: Insertar Registros en las Tablas

Aerolínea
País

Pasajero

Reserva

Pago

Tarifa

Aeropuerto

Tabla Aeropuerto

----Insertar registros en la tabla aeropuerto

insert into aeropuerto (idaeropuerto,idpais,nombre)

values ('AE01','0003','Bariloche'),

('AE02','0003','Mar del Plata'),

('AE03','0001','Jorge Chávez')

go

----Verificando los registros insertados en la tabla aeropuerto


select * from AEROPUERTO

Tabla Reserva

--Insertar registros en la tabla reserva

insert into RESERVA (idreserva,costo,fecha,observacion)

values ('1','140','01-27-2013','')

go

insert into RESERVA (idreserva,costo,fecha,observacion)

values ('2','100','01-01-2013','')

go

insert into RESERVA (idreserva,costo,fecha,observacion)

values ('3','300','03-04-2014','')

go

insert into RESERVA (idreserva,costo,fecha,observacion)

values ('4','800','04-05-2014','')

go
insert into RESERVA (idreserva,costo,fecha,observacion)

values ('5','250',getdate(),'')

go

insert into RESERVA (idreserva,costo,fecha,observacion)

values ('6','1150',getdate(),'')

go

insert into RESERVA (idreserva,costo,fecha,observacion)

values ('7','700',getdate(),'')

go

Tabla Pago

--Insertar registro en la tabla pago

insert into pago(idreserva,fecha,idpasajero,monto,tipo_comprobante,


num_comprobante,impuesto)

values ('1','01-27-2013','P0000001',40,'Ticket','0010007',0.18),
('5','05-05-2014','P0000002',250,'Factura','001-0002',0.18),

('7',getdate(),'P0000007',700,'Factura','001-0003',0.18)

go

--Verificando registros insertados en la tabla pago

select * from pago

Tabla Tarifa

--Insertar tarifa

insert into tarifa

values ('1','Supervip',1200,12),

('2','Vip',1000,12),

('3','Nacional',800,12),

('4','Económica',500,0)

go
--Verificando registros insertados en la tabla tarifa

select * from tarifa

Insertar registros en tablas Sql Server 2014 (11-35) Bases de Datos en Microsoft Sql Server
2014

Modificar registros sql server Update - Bases de Datos en


Microsoft Sql Server 2014 (12-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo se explica la manera de Modificar registros en
sql server 2014 utilizando el lenguaje de Manipulación de Datos, se usa la sentencia Update
para modificar o actualizar la información de los registros almacenados en una tabla o vista
de una base de datos en sql server 2014, todo utilizando el lenguaje sql y el lenguaje DML.

Se aplican algunos ejemplo de modificación de registros en sql server, utilizando subconsultas,


utilizando condiciones where, utilizando variables y operadores en sql server 2014.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

SENTENCIA UPDATE (Modificación y actualización de Datos): Permite modificar o actualizar


un conjunto de registros de una Tabla o vista dependiendo de una condición.

UPDATE TABLA O VISTA

[SET] {column name =expresión }

[WHERE <Search_Condition>]
Ejemplos

1. Actualizar los Valores de la columna impuesto por el valor 11 a todos los registros de la tabla
TARIFA.

Tabla Tarifa

update tarifa

set impuesto=11

go

2. Actualizar los valores de la columna impuesto aumentado en 2 a todos los registros de la tabla
TARIFA.

update tarifa
set impuesto=impuesto + 2

go

3. Asignar el impuesto a cero sólo a los registros cuya clase sea Económico de la tabla tarifa.

update tarifa

set impuesto=0

where clase='Económica'

go

4. Actualizar los costos de la tabla RESERVA disminuyendo en 50 a los registros cuyo ingreso
se realizó el año 2013, utilizar variables.

Tabla Reserva

update reserva
set costo=costo - 50

where year(fecha)=2013

go

5. Asignar el texto ‘SIN FONO’ en el campo teléfono de los pasajeros que sean de Perú

Todo esto deberá ser realizado en la tabla

Pasajero.

Tabla Pasajero

update pasajero

set telefono = 'Sin Fono'

where idpais= (select idpais from pais where nombre='Perú')


go

Modificar registros sql server 2014 Update (12-35) Bases de Datos en Microsoft Sql Server
2014

Eliminar Registros de tablas en Sql Server 2014 - Bases de


Datos en Microsoft Sql Server 2014 (13-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo veremos la manera de Eliminar registros de
tablas en base de datos en sql server 2014, utilizando el lenguaje de Manipulación de Datos
en sql server 2014, se usa la sentencia delete para poder eliminar registros en el lenguaje sql,
se utiliza también condiciones con la cláusula where para filtrar la información que se desea
eliminar y subconsultas en sql server 2014.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

SENTENCIA DELETE (Eliminación de Registros de una tabla): Permite eliminar todos los
registros específicados en una determinada tabla.

DELETE
[TOP { Expresión } ]

FROM TABLE

[WHERE <Search_Condition>]

Ejemplos
1. Eliminar todos los registros de la Tabla AEROLÍNEA.

Tabla Aerolínea

delete from aerolinea


go

2. Eliminar el registro de la tabla Pasajero cuyo idpasajero sea P0000004.

Tabla Pasajero
delete from pasajero
where idpasajero='P0000004'
go

3. Eliminar los registros de la tabla PASAJERO cuyo país sea México, utilizar subconsultas.

delete from pasajero

where idpais = (select idpais from pais where nombre = 'México')


go

4. Eliminar los registros de la tabla RESERVA que sean del año 2013 y que no superen los $ 70.

Tabla Reserva

delete from reserva


where year(fecha)= 2013 and costo>70
go

5. Eliminar los registros de la tabla PAGO, que se han efectuado en el año 2012 ó 2013.
Tabla Pago

delete from pago


where year(fecha)=2012 or year(fecha)=2013
go

Eliminar Registros de tablas en Sql Server 2014 (13-35) Bases de Datos en Microsoft Sql
Server 2014

Sacar BackUp y restaurar Backup Sql server 2014 - Bases


de Datos en Microsoft Sql Server 2014 (14-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014
Buen día amigos de IncanatoIt, en este artículo Se explica como sacar Back Up completo de tu
base de datos en Microsoft sql server 2014, hacer una copia idéntica para poder transportar
dicha copia a otra computadora o simplemente almacenarla, y después restaurar dicha copia
de base de datos en el motor de base de datos de Microsoft sql server 2014 de la misma
computadora o en otra.
Se genera también el script sql, para ejecutarlo en otro motor de base de datos.

Puedes seguir el curso Completo desde:


https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:
https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj
Back Up de Base de Datos
Una copia de seguridad, copia de respaldo en tecnologías de la información es una copia de los
datos originales que se realiza con el fin de disponer de un medio para recuperarlos en caso de
su pérdida. Los Backup son útiles ante distintos eventos y usos:

 Recuperar los datos de los sistemas informáticos de una catástrofe informática, natural
o ataque.
 Restaurar una pequeña cantidad de información que pueden haberse eliminado
accidentalmente, corrompido.

Restaurar Base de Datos

El proceso de copia de seguridad se complementa con otro conocido como restauración de los
datos (en inglés restore), que es la acción de leer y grabar en la ubicación original u otra
alternativa los datos requeridos que han sido respaldados con anterioridad.

Sacar BackUp y restaurar Backup Sql server 2014 (14-35) Bases de Datos en Microsoft Sql
Server 2014
Comando Select recuperar registros - Bases de Datos en
Microsoft Sql Server 2014 (15-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo explicaremos de manera detallada el uso de la
sentencia SELECT y sus variadas formas de recuperar información desde una tabla en la base
de datos activa. Veremos las cláusulas principales: Cláusula ALL para especificar el conjunto
de filas devueltas, DISTINCT Sentencia utilizada para mostrar filas únicas no repetidas, TOP
para mostrar solo un número o porcentaje indicado de filas obtenidas. Cláusula FROM que
permite indicar las filas que están involucradas. Sentencia WHERE Cláusula que permite
condicionar el resultado de una consulta, GROUP BY permite agrupar un conjunto de registros
en forma de resumen. HAVING permite condicionar el resultado después de haber agrupado
los registros. Sentencia ORDER BY para ordenar los registros de acuerdo a una columna
específica.
Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Lenguaje de Manipulación de Datos

COMANDO SELECT (Recuperación de Registros): Uno de los propósitos de la Gestión de


Base de Datos es almacenar información Lógica y ordenada dentro de tablas, usaremos la
sentencia SELECT y sus variadas formas de recuperar información desde una tabla en la base
de datos activa.

Sintáxis

SELECT [ALL - DISTINCT]

[TOP número – [PERCENT] ]

[FROM] tabla

[WHERE <Condición> ]

[<GROUP BY>]

[HAVING <Condición> ]

[ORDER BY columna [ASC-DESC]]

Cláusulas Principales
ALL: Especifica el conjunto de filas devueltas por la consulta.

DISTINCT: Sentencia utilizada para mostrar filas únicas no repetidas.

TOP: Para mostrar solo un número o porcentaje indicado de filas obtenidas.

FROM: Permite indicar las filas que están involucradas.

WHERE: Cláusula que permite condicionar el resultado de una consulta.

GROUP BY: Permite agrupar un conjunto de registros en forma de resumen.

HAVING: Permite condicionar el resultado después de haber agrupado los registros.

ORDER BY: Permite ordenar los registros de acuerdo a una columna espcífica.

Ejemplos

Ejemplo 1:

Mostrar los registros de la tabla PASAJERO , ordenarlos de manera ascendente por su apellido
paterno.
Tabla Pasajero

--Seleccionando todas las filas y columnas

select all * from PASAJERO

order by apaterno asc

go

--Seleccionando sólo algunas columnas

--1ra forma

select idpasajero as Codigo, apaterno as ApellidoPaterno,

amaterno as ApellidoMaterno

from PASAJERO

go

--2da Forma

select idpasajero as [Código], apaterno as [Apellido Paterno],


amaterno as [Apellido Materno]

from PASAJERO

go

--Concatenando los Apellidos

select idpasajero as [Código], apaterno as ApellidoPaterno,

amaterno as ApellidoMaterno

from PASAJERO

go

Cláusula TOP:

Específica que el conjunto de filas devueltas por la consulta puede ser controlado en un número
y en porcentaje. Considere que la muestra de registros devueltas siempre será el primer conjunto
de filas especificadas. Para especificar el porcentaje sólo agregar la palabra PERCENT.

Ejemplo 2:

Mostrar los 3 primeros registros de la tabla PASAJERO ordenados por su apellido paterno .
select top 3
idpasajero as ID, nombre as Nombre, apaterno as ApellidoP,

amaterno as ApellidoM from pasajero

order by apaterno asc

go

Ejemplo 3:

Mostrar los 3 últimos registros de la tabla PASAJERO ordenados por ambos apellidos.

select top 3
idpasajero as ID, nombre as Nombre, apaterno as ApellidoP,

amaterno as ApellidoM from pasajero

order by apaterno desc, amaterno desc

go
Ejemplo 4:

Mostrar el 30% de registros de la tabla RESERVA.

Tabla Reserva

select top 30 percent * from reserva

go

Comando Select recuperar registros (15-35) Bases de Datos en Microsoft Sql Server 2014
Cláusula Where Comando Select - Bases de Datos en
Microsoft Sql Server 2014 (16-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, En este capítulo trabajaremos con expresiones para
condicionar la búsqueda para eso utilizaremos la sentencia where junto al comando Select,
revisaremos algunos ejemplos utilizando la base de datos dbreserva para condicionar algunas
búsquedas en sql server, además trabajaremos con la función year, month.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Comando Select

Cláusula Where

Cláusula que permite condicionar el resultado de una consulta.

Ejemplos

Ejemplo 1:

Script que permita mostrar los PASAJEROS cuyo tipo de documento sea “DNI”.

Tabla Pasajero
select * from pasajero

where tipo_documento='DNI'

go

Ejemplo 2:

Mostrar los pagos que se han realizado la fecha “27-01-2013”.

Tabla Pago
select fecha,idpasajero,monto from pago

where fecha='2013-1-27'

go

Ejemplo 3:

Mostrar los pagos realizados en el mes de mayo del año 2014.

select fecha,idpasajero,monto from pago

where month(fecha)='5'

and year(fecha)='2014'

go
Ejemplo 4:

Mostrar los Pasajeros que no tienen asignado un teléfono.

select nombre,apaterno,amaterno,telefono from pasajero

where telefono is null

go

Ejemplo 5:

Implementar un Script que permita mostrar los PASAJEROS con su correspondiente país de
residencia.

select pas.nombre as Nombre,apaterno as ApellidoP,amaterno as Apellido


M,pai.nombre asPais

from pasajero pas, pais pai

where pas.idpais=pai.idpais

go
Cláusula Where Comando Select (16-35) Bases de Datos en Microsoft Sql Server 2014

Operadores Aritméticos y Asignación - Bases de Datos en


Microsoft Sql Server 2014 (17-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014
Buen día amigos de IncanatoIt, En este capítulo veremos operadores en sql server, además
también revisaremos los operadores de asignación para asignar valores a las variables
declaradas en sql server. Usaremos el Comando select para mostrar el resultado de las
operaciones matemáticas en sql server.

Puedes seguir el curso Completo desde:


https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:
https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Operadores en SQL Server


Un Operador es un símbolo que específica una acción que es realizada por una o más
expresiones. Categorías de Operadores:
 Aritméticos
 Asignación
 Lógicos

A) Operadores Aritméticos
+ Sumar : Operador de Suma Númerica y concatenación de Columnas.
- Restar : Operador de resta Númerica y también representa a números negativos.
* Multiplicar : Operador de Multiplicación.
/ Dividir : Operador de División entera y fraccionaria.
% Módulo : Operador que Devuelve el resto de una división.
B) Operador de Asignación
Sql server solo cuenta con un operador para la asignación de valores.
El operador = se tendrá que colocar en cualquier expresión que necesite asignar un valor de
cualquier tipo.

Ejemplos:

Ejemplo 1:
Script que permita mostrar el resultado de la expresión 2*(10+15) - (8/3), utilizar la sentencia
SELECT para mostrar el resultado.

Select '2*(10+5) - (8/3)' as [Operación],


2*(10+5)-(8/3) as [Resultado]
go

Ejemplo 2:
Script que permita mostrar el resultado de la expresión Celsius=(Fharenheit-32)*5/9, usar la
sentencia Select.

select '100' as Fahrenheit,


(100-32)*5/9 as Celsius
go
Ejemplo 3:
Calcular el área de un Círculo, almacenando el valor del radio y de PI en sus variables
respectivas.

declare @pi float


declare @radio float
declare @area float
--Asignar valores
set @pi=3.1415
set @radio=7
--Encontrar el área del Círculo
set @area=@pi * Power(@radio,2)

select @area as [Área]


go

Ejemplo 4:
Script que permita capturar en una variable el correo electrónico del pasajero con código
”P0000005”, usar variables Transact-SQL y sentencia Select para mostrar el email.

declare @correo varchar(70)

select @correo=email from pasajero


where idpasajero='P0000005'
--Mostramo el correo obtenido
select 'P0000005' as [Código],
@correo as [Email]
go

Operadores Aritméticos y Asignación (17-35) Bases de Datos en Microsoft Sql Server 2014
Operadores Lógicos and between or in some - Bases de
Datos en Microsoft Sql Server 2014 (18-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, En este capítulo veremos operadores lógicos en sql server; Los
operadores lógicos tienen por misión comprobar la veracidad de Alguna Condición, estos como
los operadores de comparación, devuelven el tipo de datos BOOLEAN (True, False, Unknown).

Tenemos algunos operadores lógicos: Cláusula AND , Cláusula ANY, Sentencia BETWEEN,
Cláusula EXISTS, Sentencia IN, Cláusula NOT, sentencia OR y Cláusula SOME, trabajaremos
estas cláusulas o sentencias junto al comando select en sql server 2014.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj
Lenguaje de Manipupación de Datos

C) Operadores Lógicos

Los operadores lógicos tienen por misión comprobar la veracidad de Alguna Condición, estos
como los operadores de comparación, devuelven el tipo de datos BOOLEAN (True, False,
Unknown).

AND: Representa la Lógica Y, dos expresiones deben ser TRUE para poder devolver TRUE.

ANY: Devuelve TRUE si alguna expresión del conjunto de expresiones es TRUE.

BETWEEN: Devuelve TRUE si el valor se encuentra dentro de un rango númerico o cadena.

EXISTS: Devuelve TRUE si una determinada subconsulta devuelve por lo menos una fila de
registros.

IN: Devuelve TRUE si el operando se encuentra dentro de una lista de valores específicos.

NOT: Invierte el valor booleano de una expresión

OR: Devuelve FALSE cuando ambas expresiones sean FALSE.

SOME: Devuelve TRUE si de un conjunto de comparaciones alguna es TRUE.

Símbolos que representan a los operadores Lógicos, tenemos los siguientes:

= Igualdad de Expresiones

<> != Diferencia de Expresiones

> >= Mayor / Mayor o Igual

< <= Menor / Menor o Igual


Ejemplos

Ejemplo 1:

Script para Mostrar las reservas que sean del año 2014 y no superen los $ 500.

Tabla Reserva

select * from reserva

where year(fecha)='2014'

and costo<500

go
Ejemplo 2:

Script que permita mostrar las reservas cuyo costo se encuentre desde $400 hasta $700.

select * from reserva

where costo between 400 and 700

go

select * from reserva

where costo>=400 and costo<=700

go

Ejemplo 3:

Script que permita mostrar los pasajeros cuya letra inicial de su apellido paterno se
encuentre entre A y C.

Tabla Pasajero
select apaterno, amaterno, nombre,num_documento from pasajero

where left(apaterno,1) between 'A' and 'C'


order by apaterno asc, amaterno asc, nombre asc

go

Ejemplo 4:
Script que permita mostrar los pasajeros cuya letra inicial de su apellido paterno No se
encuentre entre A y C.

select apaterno, amaterno, nombre,num_documento from pasajero

where not left(apaterno,1) between 'A' and 'C'

order by apaterno asc, amaterno asc, nombre asc

go

Ejemplo 5:

Script que permita mostrar las reservas cuya fecha se encuentra en el año 2013.

select * from reserva

where fecha between '2013-01-01' and '2013-12-31'

go

select * from reserva

where fecha>='2013-01-01' and fecha<='2013-12-31'

go
select * from reserva

where year(fecha)=2013

go

Operadores Lógicos and between or in some (18-35) Bases de Datos en Microsoft Sql Server
2014

Sentencia Like en Sql server 2014 - Bases de Datos en


Microsoft Sql Server 2014 (19-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, En este capítulo explicaremos de manera detallada el uso de la

sentencia SELECT y sus variadas formas de recuperar información desde una tabla en la base
de datos activa. Veremos operadores lógicos, implementaremos un script para determinar si un
dato ya se encuentra registrado en un tabla de la base de datos, veremos también la cláusula
like junto con sus comodines.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Lenguaje de Manipulación de Datos

C) Operadores Lógicos
Operador LIKE: Devuelve TRUE si el operando coincide a lo más con un patrón específico. El
patrón es una cadena de caracteres que se buscará en la expresión. Los comodínes a utilizar
son:

%: Representa a uno o más caracteres. Puede ser cualquier tipo de carácter textual o símbolo.

_: Representa un solo carácter de cualquier tipo.

[ ]: Representa cualquier carácter individual, dentro de un conjunto de caracteres.

[^]: Representa cualquier carácter individual fuera del intervalo especificado.

IS NOT NULL: Representa que el contenido de una columna no este vacía.

Ejemplos:

Ejemplo 1:

Script que permita verificar si un determinado país fue registrado o no en su tabla origen.
declare @pais varchar(40)

set @pais='Perú' --Alt + 39

if exists(select idpais from pais where nombre=@pais)

print 'País ya se encuentra registrado'

else

print 'País no se encuentra registrado'

go

Ejemplo 2:

Script que permita mostrar los pasajeros cuyo nombre inicie con la letra A.

Tabla Pasajero
select * from pasajero

where nombre like 'A%'

go

Ejemplo 3:

Mostrar los pasajeros que tienen una cuenta de correo GMAIL

select * from pasajero

where email like '%gmail%'


go

Ejemplo 4:

Mostrar los pasajeros cuyo segundo carácter de su nombre sea la letra A, O ó U.


select * from pasajero

where nombre like '_[AOU]%'

go

Ejemplo 5:

Mostrar los pasajeros cuyo segundo carácter de su nombre no sea la letra A, O ó U.

select * from pasajero


where nombre like '_[^AOU]%'
go

Ejemplo 6:

Mostrar los pagos realizados por un determinado pasajero, filtrar a dicho pasajero por su
número de documento. Usar subconsultas Operadores T-SQL.

declare @documento varchar(50)

set @documento ='47715777'

select * from pago

where idpasajero=(

select idpasajero from pasajero

where num_documento=@documento

go

Sentencia Like en Sql server 2012 (19-35) Bases de Datos en Microsoft Sql Server 2014
Combinación de Tablas Inner Join - Bases de Datos en
Microsoft Sql Server 2014 (20-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo explicaremos de manera detallada


el uso de la cláusula Inner Join en sql server 2014, que permite de cierto modo
combinar dos tablas, Inner Join permite emparejar filas de distintas tablas de forma
más eficiente que con el producto cartesiano cuando una de las columnas de
emparejamiento está indexada (Existe relación entre ambas tablas).
Resolveremos tres ejemplos para detallar el uso de la cláusula Inner Join en Sql
Server 2014, uniendo primero dos tablas y después más de tres tablas, siguiendo
nuestro ejemplo propuesto de la base de datos de reserva de Vuelos DBRESERVA.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Combinación de Tablas JOIN


En determinada ocasión se tendrá que unir más tablas para combinar los valores y
poder mostrarlos juntos en una consulta, para esto utilizamos la cláusula JOIN.

Hay que diferenciar dos tipos de combinaciones:


Internas: Devuelven todas las filas que cumplen con la condición de las tablas, en
caso de no encontrarse coincidencia de valores no muestra nada.

Externas: las filas resultantes no son directamente de la tabla origen, podría ser de
la izquierda, derecha o completa.

Combinación de tablas Join


INNER JOIN
JOIN
LEFT JOIN
RIGHT JOIN
FULL JOIN
CROSS JOIN

INNER JOIN
El INNER JOIN es otro tipo de composición de tablas, permite emparejar filas de
distintas tablas de forma más eficiente que con el producto cartesiano cuando una
de las columnas de emparejamiento está indexada.

Ejemplos
1. Implementar un Script que permita mostrar los pasajeros con su correspondiente
país de residencia (Inner Join).

Tabla Pasajero-País

--Utilizando un producto cartesiano

select pas.nombre,pas.apaterno,pas.amaterno,pai.nombre as [País]

from pasajero pas, pais pai

go

--Utilizando la cláusula Inner Join

select pas.nombre,pas.apaterno,pas.amaterno,pai.nombre as Pais

from pasajero pas inner join pais pai

on pas.idpais=pai.idpais

go
--Utilizando un producto cartesiano y aplicando un filtro Where

select pas.nombre,pas.apaterno,pas.amaterno,pai.nombre as Pais

from pasajero pas, pais pai

where pas.idpais=pai.idpais

go

2. Implementar un Script que permita mostrar los pasajeros con las siguientes
columnas idpasajero, nombre, apaterno, amaterno, país, fecha de pago, monto de
pago (Inner Join).

Tabla País-Pasajero-Pago
select pas.idpasajero,pas.nombre,pas.apaterno, pas.amaterno,pai.nom
bre as Pais,pag.fecha, pag.monto

from pasajero pas inner join pais pai

on pas.idpais=pai.idpais

inner join pago pag

on pag.idpasajero=pas.idpasajero

go

3. Implementar un Script que permita mostrar las reservas de un determinado


PASAJERO especificado por su nombre. Finalmente, debe ordenar la fecha de
reserva de forma descendente.
Tabla Reserva

declare @num_documento varchar(12)='47715777'

select res.*

from pago pag inner join pasajero pas

on pag.idpasajero=pas.idpasajero

inner join reserva res

on pag.idreserva=res.idreserva

where pas.num_documento=@num_documento

go
Combinación de Tablas Inner Join (20-35) Bases de Datos en Microsoft Sql
Server 2014

Datos Agrupados Group By en Sql Server - Bases de


Datos en Microsoft Sql Server 2014 (22-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo veremos la agrupación de datos en


sql Server utilizando la cláusula Group By para agrupar registros de acuerdo a los
valores de una o más columnas.
Para entender mejor el uso de esta cláusula Group By en sql server veremos dos
ejemplos donde agruparemos los registros de acuerdo a sus valores y podremos
aplicar después funciones de agregado siguiendo nuestro ejemplo propuesto de la
base de datos de reserva de Vuelos DBRESERVA.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Datos Agrupados

GROUP BY

Agrupa un conjunto de registros de acuerdo a los valores de una o más columnas


de una tabla.

[ROLLUP]

[CUBE]
<Lista de Columnas>
ROLLUP: Genera filas de agregado a la cláusula Group By más filas de subtotal y
también una fila con un total general.

CUBE: Genera filas de agregado a la cláusula Group By más una fila de


superagregado y filas de tabulación Cruzada.

Ejemplos:

Ejemplo 1:
Implementar un Script que permita mostrar las claves primarias de la tabla país
agrupadas desde la tabla pasajero. Usar la cláusula Group By.

Tabla Pasajero-País

--Utilizando Group By

select p.idpais from pasajero p


group by p.idpais

go

2. Implementar un Script que permita determiner el total de Aviones que tiene


cada aerolínea, y filtrar solo las aerolíneas que tienen más de un avión. Usar la
cláusula Group By y Having.

Tabla Aerolínea-Avión

--Utilizando Group By

Select aer.nombre,count(avi.idavion) as Total_Aviones

from aerolinea aer inner join avion avi

on avi.idaerolinea=aer.idaerolinea

group by aer.nombre
having count(avi.idavion)>1

go

Datos Agrupados Group By en Sql Server (22-35) Bases de Datos en


Microsoft Sql Server 2014

Funciones Agregadas Función SUM en sql server - Bases


de Datos en Microsoft Sql Server 2012 (23-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo veremos el uso de las funciones
agregadas en sql server, y utilizaremos específicamente la función agregada SUM
que permite devolver la suma de todos los valores distinguidos en una
determinada expresión.

Resolveremos algunos ejemplos para entender de manera adecuada el uso de esta


función de agregado SUM en sql server 2014.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Funciones Agregadas

Las funciones de agregado realizan un cálculo sobre un conjunto de valores y


devuelven un solo valor. Se suelen utilizar con la cláusula GROUP BY de la
instrucción SELECT.
SUM
COUNT
MAX
MIN
AVG
SUM

Permite devolver la suma de todos los valores distinguidos en una determinada


expresión. Esta función solo puede utilizarse con columnas de tipo numérico.
SUM(Columna o Expresión)

Ejemplos:

Ejemplo 1:

Implementar un Script que permita mostrar el acumulado de los montos


registrados en la tabla pago (Función SUM).

Tabla Pago
--Utilizando Función SUM
select sum(monto) as [Total Acumulado]
from pago
go

Ejemplo 2:
I Implementar un Script que permita mostrar el acumulado de los montos
registrados en la tabla pago por cada año, considere el año de la columna fecha.
Use la Función SUM y la cláusula Group By.

--Utilizando SUM y Group By


select year(fecha) as [Año], sum(monto) as [Total Pago]
from pago
group by year(fecha)
go

Ejemplo 3:
Implementar un Script que permita mostrar el acumulado de los montos
registrados en la tabla pago por cada año, y mes, considere el año de la columna
fecha. Use la Función SUM y la cláusula Group By.
--Utilizando SUM y Group By
select year(fecha) as [Año],month(fecha) as Mes, sum(monto) as [Tot
al Pago] from pago
group by year(fecha),month(fecha)
go

Funciones Agregadas Función SUM en sql server (23-35) Bases de Datos en


Microsoft Sql Server 2014

Funciones Agregadas Función COUNT en sql server -


Bases de Datos en Microsoft Sql Server 2014 (24-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo seguimos revisando el uso de las
funciones agregadas en Sql Server, y utilizaremos específicamente la función
agregada COUNT que permite devolver el número de elementos de un grupo.
Count siempre devolverá un valor numérico. Resolveremos algunos ejemplos para
entender de manera adecuada el uso de esta función de agregado COUNT en Sql
Server. Curso tutorial completo de base de datos en Sql Server 2014.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Funciones Agregadas
SUM
COUNT
MAX
MIN
AVG

COUNT
Función que permite devolver el número de elementos de un grupo. Count siempre
devolverá un valor numérico.

COUNT(All ó Distinct ó Columna ó *)

All: Al especificarlo todos los valores son contabilizados.

Distinct: Permite definir la no repitencia de valores condicionados de la consulta.

Columna: Se puede especificar el nombre de una columna de la tabla a contar.

Asterisco (*): Representa a todas las filas de la tabla.

Ejemplos

Ejemplo 1:
Implementar un Script que permita determinar el total de pasajeros registrados
(Función COUNT).

Tabla Pasajero
--Utilizando Función count

select count(idpasajero) as Total_Pasajeros

from pasajero

go

select count(*) as Total_Pasajeros

from pasajero

go

Ejemplo 2:

Implementar un Script que permita determinar el total de pasajeros registrados


agrupados por su país, tener en cuenta las columnas a mostrar Nombre del país,
Total Pasajeros. Use la Función agregada COUNT y la cláusula Group By e Inner
Join.

Tabla Pasajero-País

--Usando la Función agregada COUNT y la cláusula Group By e Inner


Join.

select pai.nombre as [País],count(pas.idpasajero) as

[Total Pasajeros] from pasajero pas inner join pais pai

on pas.idpais=pai.idpais

group by pai.nombre

go
3. Implementar un Script que permita mostrar el total de pasajeros y el monto
acumulado de pagos de sus viajes realizados por un determinado país.

Tabla Pasajero-País-Pago

select pai.nombre as [País],count(distinct pas.num_documento)

as [Total Pasajeros], sum(pag.monto) as [Monto Acumulado]

from pasajero pas inner join pais pai

on pai.idpais=pas.idpais inner join pago pag

on pag.idpasajero=pas.idpasajero

group by pai.nombre
go

Funciones Agregadas Función COUNT en sql server (24-35) Bases de Datos


en Microsoft Sql Server 2014

Funciones Agregadas Función MAX y MIN - Bases de


Datos en Microsoft Sql Server 2014 (25-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo seguimos revisando el uso de las
funciones agregadas en sql server, y utilizaremos específicamente la función
agregada MAX en Sql Server que permite determinar el valor máximo de una
expresión propuesta por el usuario.

También veremos la Función de agregado MIN en Sql Server que permite


determinar el valor mínimo de una expresión propuesta por el usuario.

Resolveremos algunos ejemplos para entender de manera adecuada el uso de estas


funciones de agregado MAX y MIN en Sql Server.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Funciones Agregadas
SUM
COUNT
MAX
MIN
AVG

MAX
Función que permite determinar el valor máximo de una expresión propuesta por el
usuario.
Solo puede ser usado en columnas o expresiones que tenga como tipo de dato un
entero.

MAX(All ó Columna ó Expresión).

MIN
Función que permite determinar el valor mínimo de una expresión propuesta por el
usuario.
Solo puede ser usado en columnas o expresiones que tenga como tipo de dato un
entero.
MIN(All ó Columna ó Expresión).

MAX Y MIN
All: Especifica que todos los valores son evaluados.

Columna: Se puede especificar el nombre de una columna de la tabla a evaluar.

Expresión: Representa a una función SQL o a un juego de operadores aritméticos.

Ejemplos:
Ejemplo 1:
Implementar un Script que permita mostrar el monto más alto y más bajo registrado
en la tabla PAGO (Función MAX y MIN).

t Tabla Pago

--Usando la función MAX y MIN

select max(monto) as [Monto Mayor],

min(monto) as [Monto Menor]

from pago

go

Ejemplo 2:
Implementar un Script que permita mostrar los montos más altos y más bajos por
año de la tabla pago, ordenados de forma descendente.

--Usando la función MAX y MIN

select year(fecha)as [Año],max(monto) as [Monto Mayor],

min(monto) as [Monto Menor]

from pago

group by year(fecha)

order by year(fecha) desc

go

Ejemplo 3:
Implementar un Script que permita mostrar los datos del pasajero que registra el
mayor monto desde la tabla PAGO.

--Usando la función MAX

declare @maxPago money

select @maxPago=max(monto) from pago

select pas.*

from pasajero pas

where pas.idpasajero=(select idpasajero from pago


where monto=@maxPago)

go

Funciones Agregadas Función MAX y MIN (25-35) Bases de Datos en


Microsoft Sql Server 2014

Funciones Agregadas Función AVG en sql server - Bases


de Datos en Microsoft Sql Server 2014 (26-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo seguimos revisando el uso de las
funciones agregadas en Sql Server, y utilizaremos específicamente la función
agregada AVG en Sql Server, Función que devuelve el promedio de los valores de
un determinado grupo, consideremos que dicha columna debe de ser numérica.

Resolveremos algunos ejemplos para entender de manera adecuada el uso de esta


función de agregado AVG en Sql Server.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Funciones Agregadas

SUM
COUNT
MAX
MIN
AVG

AVG
Función que devuelve el promedio de los valores de un determinado grupo,
consideremos que dicha columna debe de ser numérica.

AVG(Columna ó Expresión)

Columna: Se puede especificar el nombre de una columna de la tabla para


especificar el promedio.

Expresión: Representa a una función SQL o a un juego de operadores


aritméticos. No se permite las funciones de agregado ni subconsultas.

Ejemplos:

Ejemplo 1:
Implementar un Script que permita mostrar el precio promedio de las tarifas
asignadas a los diferentes vuelos. (Función AVG).

Tabla Tarifa

--Usando la Función AVG


select avg(precio) as [Tarifa Promedio]
from tarifa
go

Ejemplo 2:
Implementar un Script que permita mostrar el monto promedio de pagos agrupado
por países. (Función AVG).

Tabla País-Pasajero-Pago

--Usando la Función AVG


select pai.nombre,avg(pag.monto) as [Promedio Pago]
from pago pag inner join pasajero pas
on pag.idpasajero=pas.idpasajero
inner join pais pai
on pai.idpais=pas.idpais
group by pai.nombre
go
Funciones Agregadas Función AVG en sql server (26-35) Bases de Datos en
Microsoft Sql Server 2014

Agregar Conjunto de Resultados Operador UNION -


Bases de Datos en Microsoft Sql Server 2014 (27-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo veremos la manera de como agregar
conjunto de resultados de sentencia select utilizando el Operador UNION en Sql
Server que permite mostrar los resultados de varias consultas SELECT en una sola.

Resolveremos algunos ejemplos para entender de manera adecuada el uso de este


Operador UNION en sql server.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Agregar Conjunto de Resultados: UNION

El operador UNION permite mostrar los resultados de varias consultas SELECT en


una sola. La regla del uso para este operador es que ambas tablas deben de tener
las mismas columnas o especificarlas de la misma forma, y que los tipos de datos
sean exactamente iguales.

UNION
Consulta1
UNION
Consulta2

Ejemplos

Ejemplo 1:
Implementar un Script que permita mostrar los apellidos paternos de los pasajeros
y los nombres de los países en una misma consulta.

Tabla País-Pasajero

--Agregando resultados UNION

select pas.idpasajero,pas.apaterno

from pasajero pas

UNION

select pai.idpais,pai.nombre

from pais pai


go

Ejemplo 2:
Implementar un Script que permita mostrar el total de registros de las tablas
Pasajero, País, Pago desde una misma consulta.

Tabla País-Pasajero-Pago
--Agregando resultados UNION

select 'pasajero' as [Tabla], count (idpasajero)

as [Total Registros] from pasajero

UNION

select 'pais' as [tabla], count (idpais) as [Total


Registros]

from pais

UNION

select 'pago' as [tabla], count (idpago) as [Total


Registros]

from pago

go
Agregar Conjunto de Resultados Operador UNION (27-35) Bases de Datos en
Microsoft Sql Server 2014

Agregar Conjunto de Resultados Operador UNION -


Bases de Datos en Microsoft Sql Server 2014 (27-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo veremos la manera de como agregar
conjunto de resultados de sentencia select utilizando el Operador UNION en Sql
Server que permite mostrar los resultados de varias consultas SELECT en una sola.

Resolveremos algunos ejemplos para entender de manera adecuada el uso de este


Operador UNION en sql server.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Agregar Conjunto de Resultados: UNION

El operador UNION permite mostrar los resultados de varias consultas SELECT en


una sola. La regla del uso para este operador es que ambas tablas deben de tener
las mismas columnas o especificarlas de la misma forma, y que los tipos de datos
sean exactamente iguales.

UNION
Consulta1
UNION
Consulta2

Ejemplos
Ejemplo 1:
Implementar un Script que permita mostrar los apellidos paternos de los pasajeros
y los nombres de los países en una misma consulta.

Tabla País-Pasajero

--Agregando resultados UNION

select pas.idpasajero,pas.apaterno

from pasajero pas

UNION

select pai.idpais,pai.nombre

from pais pai

go
Ejemplo 2:
Implementar un Script que permita mostrar el total de registros de las tablas
Pasajero, País, Pago desde una misma consulta.

Tabla País-Pasajero-Pago

--Agregando resultados UNION


select 'pasajero' as [Tabla], count (idpasajero)

as [Total Registros] from pasajero

UNION

select 'pais' as [tabla], count (idpais) as [Total


Registros]

from pais

UNION

select 'pago' as [tabla], count (idpago) as [Total


Registros]

from pago

go

Agregar Conjunto de Resultados Operador UNION (27-35) Bases de Datos en


Microsoft Sql Server 2014

Programación Transact Estructura Múltiple CASE - Bases


de Datos en Microsoft Sql Server 2014 (29-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, en este artículo veremos dentro de la


programación Transact Sql que proporciona Microsoft Sql Server, veremos la
estructura Condicional múltiple CASE en Sql Server para evaluar una expresión
que podrá tomar N valores distintos, según se elija uno de estos valores se tomará
N posibles acciones; resolveremos algunos ejemplos para entender de manera
adecuada el uso de la estructura condicional Múltiple Case en Sql Server.
Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Programación Transact SQL

Scripts
Procedimientos Almacenados
Funciones
Triggers

Estructura Condicional Múltiple CASE

La estructura CASE evalúa una expresión que podrá tomar N valores distintos,
según se elija uno de estos valores se tomará N posibles acciones

Estructura Múltiple CASE - Sintáxis

CASE <Columna>
WHEN Expresión THEN Expresión_Resultado
[…n]
[
ELSE Expresión_Falsa
]
END
Ejemplos:

Ejemplo 1:
Implementar un Script que permita mostrar la fecha en texto registrada en la tabla
RESERVA.

2014-10-01 = 01 Octubre 2014

Tabla Reserva

--Estructura Múltiple Case


select *,
cast(day(fecha) as char(2)) +
case month(fecha)
when 1 then ' Enero '
when 2 then ' Febrero '
when 3 then ' Marzo '
when 4 then ' Abril '
when 5 then ' Mayo '
when 6 then ' Junio '
when 7 then ' Julio '
when 8 then ' Agosto '
when 9 then ' Septiembre '
when 10 then ' Octubre '
when 11 then ' Noviembre '
when 12 then ' Diciembre '
end
+ cast(year(fecha) as char(4)) as [Fecha]
from reserva
go

Ejemplo 2:
Implementar un Script que permita mostrar el número total de pasajeros por país y
el mensaje “NO CUENTA” solo a los países cuyo número de pasajeros sea cero.
Tabla Pais-Pasajero
--Estructura Múltiple Case
select pai.nombre, count(pas.idpasajero)as [Total Pasajeros],
case
when count(pas.idpasajero)=0 then 'NO CUENTA'
else ''
end as [Mensaje]
from pais pai left join pasajero pas
on pai.idpais=pas.idpais
group by pai.nombre
go

Programación Transact Estructura Múltiple CASE (29-35) Bases de Datos en


Microsoft Sql Server 2014

Funciones Sql Server - Bases de Datos en Microsoft Sql


Server 2014 (32-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014
Buen día amigos de IncanatoIt, continuamos en este curso de base de datos en
Microsoft Sql Server 2014, en este artículo trabajaremos con funciones en sql
server.

Puedes seguir el curso Completo desde:


https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CR
IeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y
Presentaciones:
https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Programación Transact SQL

Scripts
Procedimientos Almacenados
Funciones
Triggers

Funciones
Rutina almacenada que recibe unos parámetros escalares de entrada, luego los
procesa según el cuerpo definido de la función y por último retorna un resultado
de un tipo especifico que permitirá cumplir un objetivo.
SQL Server proporciona numerosas funciones integradas y permite crear funciones
definidas por el usuario.

Tipos de Funciones

Funciones del Sistema:


SQL Server cuenta con una gran variedad de funciones dependiendo de los valores
o configuraciones que deseamos realizar, a continuación mostramos algunas
funciones del sistema:
 Funciones de Agregado: SUM, AVG, COUNT,MAX, MIN
 Funciones de Fecha y Hora: GETDATE, DAY, MONTH, YEAR, DATEADD,
DATEDIF, ISDATE
 Funciones Matemáticas: ABS, RAND, LOG10, SQRT, POWER, TAN, PI,
RADIANS

Funciones definidas por el usuario:


Las funciones definidas por el usuario de SQL Server son rutinas que aceptan
parámetros, realizan una acción, como un cálculo complejo, y devuelven el
resultado de esa acción como un valor (único o conjunto de valores).
Funciones - Sintáxis

Create Function Nombre_Función


(@parámetro1 as [Tipo Dato] = [ValorxDefecto],
@parámetroN as [Tipo Dato] = [ValorxDefecto])
RETURNS TipoDato_Returnado
AS
BEGIN
<Instrucciones>
RETURN Expresión_salida
END

Ejemplos

Ejemplo 1:
Implementar una función que devuelva el promedio de dos números ingresados por
el usuario.

--Evaluamos primero si ya existe la función

--que queremos implementar si ya existe la eliminamos

IF object_id('calcularpromedio') is not null

BEGIN

DROP FUNCTION dbo.calcularpromedio

END

go

--Implementamos la función con dos parámetros de entrada

CREATE FUNCTION calcularpromedio

(@valor1 as decimal(10,2),@valor2 decimal(10,2))

RETURNS decimal(10,2)

AS

BEGIN

DECLARE @resultado decimal(10,2)


SET @resultado=(@valor1+@valor2)/2
RETURN @resultado
END
GO
--Ejecutamos la función con un select y le enviamos
--los dos parámetros de entrada (DBO es el nombre del propietario)
select dbo.calcularpromedio(12,13) as Promedio
--Ejecutamos la función con un print y le enviamos
--los dos parámetros de entrada
print 'Promedio:
' + cast(dbo.calcularpromedio(12,13) as Char(10))

Ejemplo 2:
Implementar una función que devuelva el nombre de un mes en letras según una
fecha ingresada por el usuario.

Tabla Pasajero - País - Pago

--Evaluamos primero si ya existe la función

--que queremos implementar, si ya existe la eliminamos

IF object_id('fechaletras') is not null

BEGIN

DROP FUNCTION dbo.fechaletras


END

go

--Implementamos la función con un solo parámetro de entrada

CREATE FUNCTION fechaletras (@fecha as DATE)

RETURNS varchar(20)

AS

BEGIN

DECLARE @resultado varchar(20)

SET @resultado=concat(day(@fecha),' de
',datename(month,@fecha),

' del ',year(@fecha))

RETURN @resultado
END
GO
--Ejecutamos la función con un select y le enviamos
--el parámetro de entrada
select dbo.fechaletras('2015-08-08') as [Fecha Actual]

select dbo.fechaletras(pag.fecha) as Fecha,


(pas.nombre + ' ' +pas.apaterno) as pasajero,
pag.tipo_comprobante,pag.num_comprobante
from pago pag inner join pasajero pas
on pag.idpasajero=pas.idpasajero
go

Ejemplo 3:
Implementar una función de tabla en línea que muestre los registros de la tabla
pasajero dependiendo del país de proveniencia.

Tabla Pasajero - País


--Evaluamos primero si ya existe la función

--que queremos implementar, si ya existe la eliminamos

IF object_id('pasajeroxpais') is not null

BEGIN

DROP FUNCTION dbo.pasajeroxpais

END

go

--Implementamos la función con un solo parámetro de entrada

CREATE FUNCTION pasajeroxpais (@pais as varchar(30))

RETURNS TABLE

AS

RETURN (SELECT pas.idpasajero,(pas.nombre + ' ' +

pas.apaterno) as Pasajero,pai.nombre as Pais

from pasajero pas inner join pais pai


on pai.idpais=pas.idpais
where pai.nombre=@pais)

GO
--Ejecutamos la función con un select,
--Mostraremos los pasajeros del país Perú
select * from dbo.pasajeroxpais('Perú')
go

Funciones (32-35) Bases de Datos en Microsoft Sql Server 2012


Tablas de Referencia Cruzada Pivot - Bases de Datos en
Microsoft Sql Server 2014 (35-35)
IncanatoIt-ad 4 years ago Curso Completo Sql Server 2014

Buen día amigos de IncanatoIt, finalizamos este curso de base de datos en


Microsoft Sql Server 2014, en este artículo trabajaremos con el uso de tablas de
referencia cruzada utilizando la función PIVOT.

Puedes seguir el curso Completo desde:

https://www.youtube.com/watch?v=lFYSq3DI3rs&list=PLZPrWDz1MolrT1ID3CRIeR6jPLJ7Fp1x6

Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:

https://drive.google.com/open?id=1kAJ_A03b7Y2DSqQzXEDwaMtBbvks7gmj

Tablas de Referencia cruzada - Función PIVOT

PIVOT gira una expresión con valores de tabla convirtiendo los valores únicos de
una columna de la expresión en varias columnas en la salida y realiza agregaciones
donde son necesarias en cualquier valor de columna restante que se desee en la
salida final.

Ejemplos:
Ejemplo 1:
Mostrar los pagos realizados por los pasajeros, pero ordenar los pagos por meses.

Pasajero Enero Febrero Marzo Abril

Pasajero 01 100 0 154 0

Pasajero 02 0 300 0 170

Pasajero 03 150 0 500 0

Tabla Pasajero - País - Pago

--Seleccionamos todos los registros de la tabla

--de referencia cruzada

select

Pasajero,
case when Enero Is not null then Enero else 0 end as Enero,

case when Febrero Is not null then Febrero else 0 end as Febrero,

case when Marzo Is not null then Marzo else 0 end as Marzo,

case when Abril Is not null then Abril else 0 end as Abril,

case when Mayo Is not null then Mayo else 0 end as Mayo,
case when Junio Is not null then Junio else 0 end as Junio,
case when Julio Is not null then Julio else 0 end as Julio,
case when Agosto Is not null then Agosto else 0 end as Agosto,

case when Setiembre Is not null then Setiembre else 0 end as Setie
mbre,

case when Octubre Is not null then Octubre else 0 end as Octubre,
case when Noviembre Is not null then Noviembre else 0 end as Novie
mbre,
case when Diciembre Is not null then Diciembre else 0 end as Dicie
mbre
from

(
select pas.apaterno as Pasajero,

datename(month,pag.fecha) as Mes
,SUM(pag.monto) as Total

from pago pag inner join pasajero pas


on pag.idpasajero=pas.idpasajero

group by pas.apaterno,
datename(month,pag.fecha)

) T
PIVOT (SUM(T.Total) FOR T.Mes IN ([Enero],[Febrero],[Marzo]

,[Abril],[Mayo],[Junio],[Julio],[Agosto],[Setiembre],
[Octubre],[Noviembre],[Diciembre]))PVT
go

Tabla de referencia Cruzada - Función Pivot (35-35) Bases de Datos en


Microsoft Sql Server 2014

Potrebbero piacerti anche