Está en la página 1de 22

SQL

- BASICO-
SESIÓNII

Docente: Brangovich Ordóñez


REGLAS

Se requiere puntualidad para un mejor desarrollo del curso.

Para una mayor concentración mantener silenciado el micrófono durante la sesión.

Las preguntas se realizarán a través del chat y en caso de que lo requieran


podrán activar el micrófono.

Realizar las actividades y/o tareas encomendadas en los plazos


determinados.

Identificarse en la sala Zoom con el primer nombre y primer apellido.


AGENDA

▪ Introducción al lenguaje Transact SQL


▪ Uso comandos, clausulas y operadores en SQL.
▪ Uso de funciones
▪ Ejemplo practicos
Lenguaje Transact SQL

DDL (Lenguaje de Definición de datos)


Se utiliza para definir y administrar objetos de la BD, tales como Bases, tablas, y vistas. Usualmente las mas
usadas son CREATE TABLE, ALTER TABLE, DROP TABLE. Se utilizan para crear tablas, modificar (agregar o borrar
columnas, modificar, etc), y eliminar tablas respectivamente.

DML (Lenguaje de Manipulación de datos)


Se utiliza para manipular información de las BD, para ello utilizaremos instrucciones como INSERT, SELECT,
UPADTE, CASE, DATE, UPDATE, DELETE y otros. Estas instrucciones nos permiten seleccionar filas, filtrar,
insertar nuevas filas, modificar las filas existentes y eliminar datos no deseados.

4
Comandos de manipulación de datos (DML)

Comando Descripción
INSERT Utilizado para insertar o cargar datos en las tablas de las base de datos
UPDATE Utilizado para modificar los valores de los campos y registros especificados
DELETE Utilizado para eliminar registros de una tabla de una base de datos
¿Cómo insertar datos a unatabla?

TABLA: TB_CLIENTES
char(4) varchar(25) char(1) numeric(2,0)
CODIGO NOMBRE SEXO EDAD EMAIL
C001 JOSE M 35 jose@gmail.com
C002 MARIA F 25

INSERT INTO [BD_PRUEBA].[dbo].[TB_CLIENTES] VALUES ( ' C 0 0 1 ' , 'JOSE','M',35,'jose@gmail.com')


INSERT INTO [BD_PRUEBA].[dbo].[TB_CLIENTES] VALUES ( ' C 0 0 2 ' , 'MARIA','F',25,'maria@gmail.com')
¿Cómo actualizar un registro de la tabla?

CODIGO NOMBRE SEXO EMAIL


C001 JOSE M NULL
TABLA: TB_CLIENTES
C002 MARIA F NULL
char(4) varchar(25) char(1) varchar(50) C003 PEDRO M NULL
CODIGO NOMBRE SEXO EMAIL C004 ANA F NULL
C001 JOSE M jose@gmail.com C005 JUAN M NULL
C002 MARIA F maria@gmail.com
Actualizar datos
C003 PEDRO M pedro@gmail.com
C004 ANA F ana@gmail.com
C005 JUAN M juan@gmail.com

UPDATE [dbo].[TB_CLIENTE]
SET EMAIL='jose@gmail.com'
WHERECODIGO='C001'
7
¿Cómo eliminamos un registro de la tabla?

TABLA: TB_CLIENTES
char(4) varchar(25) char(1) varchar(50)
CODIGO NOMBRE SEXO EMAIL
C001 JOSE M jose@gmail.com
C002 MARIA F maria@gmail.com Eliminar
C003 PEDRO M pedro@gmail.com
C004 ANA F ana@gmail.com
C005 JUAN M juan@gmail.com

- - ELIMINAR UNREGISTRO DEUNATABLA - - ELIMINAR TODOSREGISTROS DEUNATABLA


DELETE FROM[dbo].[TB_CLIENTE] WHERE TRUNCATETABLE [dbo].[TB_CLIENTE]
CODIGO='C002'
8
Base de datos: Banco
TABLA: TB_CLIENTE_PERFIL TABLA: TB_CLIENTE_PRODUCTOS TABLA: TB_CLIENTE_PRESTAMO
CAMPO TIPO DESCRIPCION CAMPO TIPO DESCRIPCION
CAMPO TIPO DESCRIPCION
CODIGO varchar Codigo del Cliente CODIGO varchar Codigo Cliente
CONTRATO Int Codigo Contrato
COD_AGENCIA varchar Codigo Agencia CTA_AHORRO numeric Flg Cuenta Ahorro
CODIGO Varchar Codigo Cliente
COD_SEGMENTO varchar Codigo segmento cliente SALDO_AHORRO numeric Saldo Cta Ahorro
DESEMBOLSO Numeric Monto Inicial desembolso
FH_NACIMIENTO varchar Fecha Nacimiento CTA_PLAZO numeric Flg cta Plazo
SALDO_REAL Numeric Saldo Actual Deuda
ECIVIL varchar Estado Civil SALDO_PLAZO numeric Saldo Cta Plazo
MONTO_CUOTA Numeric Monto de Cuota
SEXO varchar Sexo CTA_FONDO numeric Flg Cta Fondo Mutuo
NUMERO_CUOTAS Numeric Total Numero de cuotas
FH_ALTA varchar Fecha alta Cliente SALDO_FONDO numeric Saldo Fondo Mutuo
COD_UBIGEO varchar Ubigeo de residencia CTA_CTS numeric Flg Cta CTS CUOTAS_PAGADAS Numeric Cuotas pagadas
TIENE_TELEFONO char Tenencia Telefono SALDO_CTS numeric Saldo Cta CTS CUOTAS_PENDIENTES Numeric Cuotas Pendientes
TIENE_CORREO char Tenencia Correo CTA_PRESTAMO numeric Flg Prestamo Consumo TASA Numeric Tasa delprestamo
USO_AGENCIA char Uso de Agencia SALDO_PRESTAMO numeric Saldo Prestamo consumo FECHA_ALTA Varchar Fecha de Alta contrato
FECHA_VENCIMIENTO Varchar Fecha Vencimiento
USO_CAJERO char Uso de Cajero CTA_HIPOTECARIO numeric Flg Prestamo hipotecario
COD_PRODUCTO varchar Codigo Producto
USO_INTERNET char Uso Internet SALDO_HIPOTECARIO numeric Saldo Prestamo hipotecario
CLASIFICADO_SBS char Flg Clasificacion SBS CTA_TARJETA numeric Flg Tarjeta Credito
INGRESO numeric Ingreso Calculado SALDO_TARJETA numeric Saldo Tarjeta Creito
TABLA: TB_TIPO_PRESTAMO
TABLA: TB_CLIENTE_RENTABILIDAD CAMPO TIPO DESCRIPCION
TABLA: UBIGEO CAMPO TIPO DESCRIPCION Codigo producto
CAMPO TIPO DESCRIPCION CODIGO varchar Codigo Cliente COD_PRODUCTO nvarchar prestamo
COD_UBIGEO nvarchar Codigo Ubigeo SALDO_ACTIVO numeric Saldo Ctas Activos PRODUCTO nvarchar Detalle prestamo
DISTRITO nvarchar Distrito SALDO_PASIVO numeric Saldo Ctas Pasivos
PROVINCIA nvarchar Provincia RENTABILIDAD numeric Rentabilidad Mes TABLA: TB_AGENCIA
DEPARTAMENTO nvarchar Departamento
CAMPO TIPO DESCRIPCION
COD_POSTAL nvarchar Codigo Postal TABLA: TB_SEGMENTO COD_AGENCIA nvarchar Codigo agencia
AREA varchar Ambito
CAMPO TIPO DESCRIPCION ZONA nvarchar Zona de cobertura
COD_SEGMENTO int Codigo Segmento AGENCIA nvarchar Nombre de agencia
TABLA: TB_ESTADO_CIVIL
CAMPO TIPO DESCRIPCION DESC_SEGMENTO varchar Descripcion Segmento
ECIVIL varchar Codigo estado civil GRUPO numeric Grupo Segmento
ESTADO_CIVIL varchar Estado civil 9
Clausulas
Son condiciones de modificación utilizadas para definir los datos que se desea seleccionar o manipular

Clausula Descripción
Utilizado para consultar registros de la base de datos que satisfacen un criterio
SELECT
determinado.

FROM Utilizado para especificar la tabla de la cual se va seleccionar los registros

Utilizado especificar las condiciones que deben de reunir los registros que se van
WHERE
a seleccionar
GROUP BY Utilizado para separar los registros seleccionados en grupos específicos
HAVING Utilizado para expresar la condición que debe de satisfacer cada grupo
Utilizado para ordenar los registros seleccionados de acuerdo con un orden
ORDER BY
especifico. 10
Orden de ejecución de una sintaxis
Reporte de agencias cuyo suma de saldo pasivo total de sus clientes superen los S/. 100,000 soles, no considerar los clientes del
segmento corporativo; el reporte tiene que ser por código agencia mostrando el numero de clientes y el monto total del pasivo.

Clausula SELECT SELECTA.COD_AGENCIA, COUNT(A.CODIGO), SUM(B.SALDO_PASIVO)

Clausula FROM FROM TB_CLIENTE_PERFIL A


INNER JOIN TB_CLIENTE_RENTABILIDAD B ONA.CODIGO=B.CODIGO
Clausula WHERE
WHERE COD_SEGMENTO NOTIN ( ' 2 8 8 0 11 ' , ' 2 8 8 0 2 2 ’ )

Clausula GROUP BY
GROUPBYCOD_AGENCIA

Clausula HAVING
HAVING SUM(B.SALDO_PASIVO)>100000

Clausula ORDER BY
ORDER BY A. COD_AGENCIA ASC
Operadores de comparación

Operador Uso
< Mayor que
> Menor que
<> Distinto de
<= Menor igual que
>= Mayor igual que
= Igual que
BETWEEN Utilizado para especificar un intervalo de valores
LIKE Utilizado en la comparación de un modelo
IN Utilizado para especificar registros en una base de datos.
Ejemplos Operadores de comparación
1. Listar todos los campos de la tabla cliente perfil
2. Mostrar solo los campos código, sexo y fecha de nacimiento
3. Mostrar solo los clientes del sexo masculino.
4. Cuantos clientes tienen teléfono.
5. Listar a los 10 clientes con mayores ingresos
6. Listar al 20% de clientes con mayor rentabilidad
7. Clientes con saldo pasivo menor a 10,000 soles.
8. Clientes con rentabilidad mayor igual a 250 soles mes.
9. Clientes con ingreso igual 5000 soles.
10. Clientes con saldos activos entre 1500 y 3500 soles
11. Clientes que tengan prestamos hipotecarios.
12. Clientes que solo sean del segmento premium
Operadores Lógicos

Operador uso
Es el “y “ lógico. Evalúa dos condiciones y devuelve un valor de verdad solo si
AND
ambas son ciertas.
Es el “o “ lógico. Evalúa dos condiciones y devuelve un valor de verdad solo si
OR
alguna de las dos es cierta.
NOT Negación lógica. Devuelve el valor contrario de la expresion
Ejemplos Operadores Lógicos

1. Cuantos clientes tienen teléfono y email.


2. Clientes sin ingreso especificado o valor 0.
3. Clientes que hayan usado banca por internet o cajero.
4. Listado de todos los prestamos no considerar los prestamos vehiculares
Operadores de comparación
Operador Uso
< Mayor que
> Menor que
<> Distinto de
<= Menor igual que
>= Mayor igual que
= Igual que
BETWEEN Utilizado para especificar un intervalo de valores
LIKE Utilizado en la comparación de un modelo
IN Utilizado para especificar registros en una base de datos.
Ejemplos Operadores de comparación

1. Clientes con saldo pasivo menor a 10,000 soles.


2. Clientes con rentabilidad mayor igual a 250 soles mes.
3. Clientes con ingreso igual 5000 soles.
4. Clientes con saldos activos entre 1500 y 3500 soles
5. Clientes que tengan prestamos hipotecarios.
6. Clientes que solo sean del segmento premium
Funciones de agregado

Operador Uso
COUNT Utilizado para devolver el numero de registros de la selección.
Utilizado para devolver la suma de todos los valores de un
SUM
campo determinado.
Utilizado para calcular el promedio de los valores de un campo
AVG
determinado
Utilizado para devolver el valor mas bajo de un campo
MIN
determinado.
Utilizado para devolver el valor mas alto de un campo
MAX
determinado.
Ejemplo funciones de agregado
1. Determinar el numero de clientes que tienen un préstamo
2. Determinar la suma total del saldo pasivo de todos los clientes
3. Determinar el promedio de saldo activo de todos los clientes
4. Determinar el desembolso máximo de préstamo
5. Determinar el desembolso mínimo de préstamo
6. Determinar el desembolso promedio de préstamo
7. Determinar el numero de clientes por agencia detallando el total de la masa
salarial y el promedio de ingreso.
Ejercicios Prácticos (Tarea para la casa)
1. Listar todos los clientes de la zona Lima este .
2. Listar los clientes del segmento banca red.
3. Determinar el numero de clientes, la masa salarial y el promedio de ingreso de los clientes del distrito de
San Isidro.

4. Determinar los clientes con prestamos personales que tienen menos de 48 cuotas programadas.
5. Determinar el 10% de clientes con prestamos que tienen el menor numero de cuotas pendientes.
6. Listar el numero de clientes con prestamos que hayan pagado mas del 80% de su préstamo.
7. Listar los clientes que tengan mas de 2 cuentas de ahorro con saldos superiores a 500 soles.

20
REFERENCIAS
• https://docs.microsoft.com/en-us/sql/relational-databases/databases/create-a-database?view=sql-server-ver15
• https://www.sqlshack.com/es/como-importar-exportar-datos-a-sql-server-utilizando-el-asistente-para-importacion-y-exp
ortacion-de-sql-server/

También podría gustarte