Sei sulla pagina 1di 39

SQL Server for Analytics

Sesión 1 Modulo 1
Alejandro Sánchez Núñez
EXPERIENCIA

Consultor en Business Intelligence y Analytics en Kaits Consulting


Microsoft Power BI Consultant & Developer
Instructor de Cursos de Business Intelligence (SQL, Datamarts, Warehouse, etc).
Speaker en eventos nacionales como los SQL Saturdays, Webinars , etc.
Co-Fundador de Perú BI & Analytics Group
CERTIFICACIONES EXPERIENCIA LABORAL
PUNTOS DE CONTACTO
Correo: alejandro.sanchez.nunez@hotmail..com
LinkedIn: Alejandro Sánchez Núñez
Blog: www.bi64pro.com
Miembro de la Proyecto PBI PBI
Youtube : BI64PRO Comunidad PBI Social Media Commodity
Twitter: @Alejandro_Zhao

Proyectos Proyectos Power BI Proyectos


en Retail en Banca en Agro PBI con R

Proyectos PBI Proyectos en Proyectos en


Logística Azure SQL
Resumen del curso
Resumen de la Sesión 1
• Arquitectura Básica de SQL Server
• Versiones y Ediciones de SQL Server
• Uso SQL Server Management Studio
• Novedades de SQL Server 2016
• Introducción a TSQL
• Orden Lógico de Operaciones con SELECT
• Despliegue de un Azure SQL Database
• Querys con SELECT
• Uso de DISTINCT
• Alias en Columnas y Tablas
• Querys con CASE
Arquitectura Básica de SQL Server

• Definición

• Microsoft SQL Server es una


base de datos relacional.

• La base de datos contiene datos


y objetos.

• El TSQL tiene un extensión .sql


Arquitectura Básica de SQL Server

Lo recomendado

Servidor de Base de Datos Servidor de Base de Datos


Una aplicación podría convivir en La aplicación podría localizarse en un servidor
un mismo servidor diferente al de Base de Datos
(No recomendable)
Arquitectura Básica de SQL Server

• Ejemplo Base de Datos Relacional

Tabla

Customers (Sales)
Suppliers (Production)
custid
supplierid

Employees (HR)
empid
Products (Production)
Orders (Sales)
productid
orderid
Shippers (Sales)

Categories (Production) OrderDetails (Sales)


categoryid orderid

Esquema Relaciones
Versiones y Ediciones de SQL Server
Versión Año de Lanzamiento
• Versiones
2016 2016
2014 2014
2012 2012
2008 R2 2010
2008 2008
2005 2005
2000 2000
7.0 1998
6.5 1996
6.0 1995
4.2.1 1994
4.2 1992
1.1 1991
1.0 1989
Versiones y Ediciones de SQL Server

• Ediciones de SQL Server


Versiones y Ediciones de SQL Server

• Ediciones de SQL Server

Referencia: https://www.microsoft.com/es-es/sql-server/sql-server-2016-editions
Uso de SQL Server Management Studio

• Es una herramienta cliente para SQL Server.


• Envía comandos al SQL Server Database Engine.
• En una empresa puedes instalar varios Management Studio(en pcs
clientes) para administrar un servidor de SQL Server.
• Para conectarte a SQL Server necesitas:
• Nombre Instancia(host/instancia).
• Nombre de base de datos(puede ser asignado una base de datos por defecto).
• Autenticación.
• En el Object Explorer puedo visualizar los objetos de la base de datos
de una manera gráfica.
IT’S TIME TO WORKOUT
Novedades de SQL Server 2016

• Row Level Security


• Dynamic Data Masking
• Strech Database
• Operational Analytics ( In Memory + Column Store Index)
• Temporal Tables
• R services
• Polybase
Introducción a T-SQL

• SQL son las siglas de Structured Query Language


• Las industrias manejas diferentes versiones de SQL:
• PL/SQL - Oracle
• SQL Procedural Language -IBM
• Transact SQL -Microsoft
Introducción a T-SQL

DML DDL DCL

• Data • Data Definition • Data Control


Manipulation Language Language
Language
• Usado para • Usado para
• Usado para la definir objetos gestionar la
consulta y de la base de seguridad de los
manipulación de datos. permisos.
datos
• GRANT, REVOKE,
• SELECT, INSERT, • CREATE, ALTER, DENY
UPDATE, DELETE DROP
Introducción a T-SQL

Predicados y
Elementos:
Operadores:
ALL, ANY, BETWEEN, IN,
Predicados
LIKE, OR, SOME
Operadores =, >, <, >=, <=, <>,
Comparación !=, !>, !<

Operadores Lógicos AND, OR, NOT

Operadores
Matemáticos *, /, %, +, -,

Concatenación +
Introducción a T-SQL

Funciones Funciones Fecha Funciones


Cadena y Tiempo Agregacion

• SUBSTRING • GETDATE • SUM


• LEFT, RIGHT • SYSDATETIME • MIN
• LEN • GETUTCDATE • MAX
• REPLACE • DATEADD • AVG
• REPLICATE • DATEDIFF • COUNT
• UPPER, LOWER • YEAR • COUNT_BIG
• LTRIM, RTRIM • MONTH • STDEV
• STUFF • DAY • STDEVP
• SOUNDEX • DATENAME • VAR
• DATEPART
• ISDATE
Introducción a T-SQL

• Variables
• Las variables empiezan con @
• El uso de @@ es para funciones del sistema
• Debe indicarse un tipo de dato
• Puede ser usado para desarrollados de base de datos en procedimientos
almacenados y funciones

DECLARE @empresa varchar(30) = ‘PeruBI%';


IT’S TIME TO WORKOUT
Introducción a T-SQL

Control de
Flujo de Control Error Handling
Transacciones

• IF … ELSE • TRY • BEGIN


• WHILE • CATCH TRANSACTION
• BREAK • THROW • ROLLBACK
• CONTINUE TRANSACTION
• BEGIN … END • COMMIT
• WAITFOR TRANSACTION
• ROLLBACK
WORK
• SAVE
TRANSACTION
Orden Lógico de Operaciones con SELECT

Elementos Expresiones Rol

Defines which columns to


SELECT <select list>
return

FROM <table source> Defines table(s) to query

<search Filters returned data using a


WHERE
condition> predicate

GROUP BY <group by list> Arranges rows by groups

<search
HAVING Filters groups by a predicate
condition>

ORDER BY <order by list> Sorts the results


Orden Lógico de Operaciones con SELECT

5. SELECT <select list>


1. FROM <table source>
2. WHERE <search condition>
3. GROUP BY <group by list>
4. HAVING <search condition>
6. ORDER BY <order by list>
IT’S TIME TO WORKOUT
Despliegue de un Azure SQL Database

• Para crear una base de datos en Azure se debe contar con una
suscripción en Azure.
• La base de datos debe pertenecer a un Grupos de Recursos.
• El Azure SQL Database debe ser desplegado en un servidor en Azure.
Despliegue de un Azure SQL Database

• Planeamiento del Servidor


IT’S TIME TO WORKOUT
Querys con SELECT

• La palabra SELECT se utiliza para indicar las columnas a mostrar.


• EL FROM indica de donde obtendré la data , pudiendo ser vistas o
tablas.
Nota:
Una buena práctica es que al acabar una sentencia se termine con “;“ ,
además de indicar la finalización de la sentencia.

Palabra Reservada Expresión


SELECT <selección>
FROM <tabla o vista>
Querys con SELECT

• Mostrar todas las columnas:

SELECT *
FROM Sucursal;

• Mostrar algunas columnas:

SELECT Nombre,Direccion,Activa
FROM Sucursal;
Querys con SELECT

• Cálculos en el SELECT :

SELECT (Cantidad*PrecioVentas)
FROM DetalleVentas;

Operador Descripción
+ Más o Concatenación(strings)
- Menos
* Multiplicación
/ División
% Módulo
IT’S TIME TO WORKOUT
Uso de DISTINCT

• La palabra reservada DISTINCT es utilizada en los SELECT para eliminar


duplicados de registros.

SELECT Nombre SELECT DISTINCT Nombre


FROM Distritos; FROM Distritos;

Nombre Nombre
----------- -----------
San Miguel San Miguel
San Miguel Surco
Surco Surquillo
Surquillo Trujillo
Trujillo
Uso de DISTINCT

• El uso de DISTINCT nos permite:


• Retornar filas únicas del conjunto de filas seleccionadas.
• Cuando se realizan joins entre tablas se podría lograr un mejor performance.
• El uso de DISTINCT también tiene un costo
IT’S TIME TO WORKOUT
Alias en columnas y tablas

• Uso de Alias en Columnas:


SELECT orderid, unitprice, qty AS quantity
FROM Sales.OrderDetails;

SELECT orderid, unitprice, quantity = qty


FROM Sales.OrderDetails;

SELECT orderid, unitprice quantity


FROM Sales.OrderDetails;
Alias en columnas y tablas

• Uso de Alias en Tablas:


SELECT custid, orderdate
FROM SalesOrders AS SO;

SELECT custid, orderdate


FROM SalesOrders SO;

SELECT SO.custid, SO.orderdate


FROM SalesOrders AS SO
Alias en columnas y tablas

• El ALIAS que utilizamos para


columnas puede ser utilizado
en el ORDER BY , recordando
el orden lógico de como se
ejecuta una consulta.
Querys con Case

• El CASE puede ser utilizado en:


• SELECT
• WHERE y HAVING
• ORDER BY
• Cuando se utiliza en el SELECT requiere asignarle un ALIAS
IT’S TIME TO WORKOUT
Resumen de la Sesión 1

• El alumno debe de haber aprendido los conceptos:


• Arquitectura Básica de SQL Server
• Versiones y Ediciones de SQL Server
• Uso SQL Server Management Studio
• Conocer algunas nuevas características de SQL Server 2016
• Introducción a TSQL y el orden lógico de operaciones SELECT
• Despliegue de un Azure SQL Database
• Querys con SELECT
• Uso de DISTINCT
• Alias en Columnas y Tablas
• Querys con CASE

Potrebbero piacerti anche