Tsql

15
Lenguaje T-SQL

description

sql,consultas

Transcript of Tsql

Page 1: Tsql

Lenguaje T-SQL

Page 2: Tsql

• Declaraciones para consultar y modificar datos

• SELECT, INSERT, UPDATE, DELETE

• Declaraciones para definición de Objetos

• CREATE, ALTER, DROP

• Declaraciones de los permisos de seguridad

• GRANT, REVOKE, DENY

Data Manipulation Language (DML)(Lenguaje de Manipulación de Datos)

Data Definition Language (DDL)(Lenguaje de Definición de Datos)

Data Control Language (DCL)

(Lenguaje de Control de Datos)

Categorias de las declaraciones T-SQL

Page 3: Tsql

Predicados y OperadoresPredicados y Operadores

Control de FlujoControl de FlujoFuncionesElementos del lenguaje T-SQL: funciones

FuncionesElementos del lenguaje T-SQL: funciones

ExpresionesExpresiones

VariablesVariables ComentariosComentarios

Separadores BatchSeparadores Batch

Elementos del lenguaje T-SQL

Page 4: Tsql

Elementos del lenguaje T-SQL: predicados y operadores

Elementos: Predicados y Operadores:

Predicados IN, BETWEEN, LIKE

Operadores de Comparación =, >, <, >=, <=, <>, !=, !>, !<

Operadores Lógicos AND, OR, NOT

Operadores Aritméticos +, -, *, /, %

Concatenación +

T-SQL hace cumplir la prioridad de los operadores Regresar

Page 5: Tsql

• SUBSTRING• LEFT, RIGHT• LEN• DATALENGTH• REPLACE• REPLICATE• UPPER, LOWER• RTRIM, LTRIM

• GETDATE• SYSTDATETIME• GETUTCDATE• DATEADD• DATEDIFF• YEAR• MONTH• DAY

• SUM• MIN• MAX• AVG• COUNT

Funciones String Funciones Fecha y Hora Funciones Agregadas

Elementos del lenguaje T-SQL: funciones

Regresar

Page 6: Tsql

Elementos del lenguaje T-SQL: variables• Variables locales en T-SQL, almacenan temporalmente un valor de un tipo de dato especifico

• Los nombre de las variables inician con @ • @@ significa que la variable esta reservada para funciones del sistema Se le asigna un tipo de datos

• Debe ser declarado y utilizados dentro del mismo lote

• En SQL Server 2008 y versiones posteriores, puede declarar e inicializar en la misma sentencia

DECLARE @MyVar int = 30;DECLARE @MyVar int = 30;

Regresar

Page 7: Tsql

Elementos de lenguaje T-SQL : expresiones

• La combinación de Identificares, valores y operadores valuados para obtener un resultado.

• Pueden ser usados en declaraciones SELECT • Cláusula SELECT• Cláusula WHERE • Puede ser una constante, una función de un solo valor o una variable• Pueden ser combinadas, si las expresiones son del mismo tipo

SELECT YEAR(FechaOrden) + 1 ...SELECT YEAR(FechaOrden) + 1 ...

SELECT CantOrden * PrecioUnit ...SELECT CantOrden * PrecioUnit ...

Regresar

Page 8: Tsql

Elementos de lenguaje T-SQL : Separadores de lotes

• Los lotes son conjuntos de comandos enviados a SQL Server como una unidad• Lotes determinar el alcance variables, la

resolución de nombres• Para separar las declaraciones en lotes, use un

separador:• Las herramientas de SQL Server utilizan la palabra

GO• GO no es un comando SQL Server T-SQL

Regresar

Page 9: Tsql

Elementos de lenguaje T-SQL: control del flujo, los errores y las transacciones• Le permite controlar el flujo de ejecución del código, manejar los errores y mantener operaciones

• Se utiliza en objetos de código de programación

• Los procedimientos almacenados, triggers, bloques de instrucciones

• TRY...CATCH• TRY...CATCH• IF...ELSE• WHILE• BREAK• CONTINUE• BEGIN...END

• BEGIN TRANSACTION• COMMIT TRANSACTION• ROLLBACK TRANSACTION

Control de Flujo Manejo de Error Controles de Transacción

Regresar

Page 10: Tsql

Elementos de lenguaje T-SQL : comentarios• Marcar código T-SQL como un comentario:• Para un bloque, encerrarlo entre / * y * / caracteres

• Para comentar una sola línea utilizar –

• Dependiendo del editor de texto, mostrará en color verde los comentarios

/* This is a block

of commented code*/

/* This is a block

of commented code*/

-- This line of text will be ignored-- This line of text will be ignored

Page 11: Tsql

Lógica de Procesamiento de consultas• El orden en el que se escribe una consulta no es el orden en el que se

evalúa por SQL Server.

5: SELECT <lista de campos>5: SELECT <lista de campos>

1: FROM <Nombre de la tabla>1: FROM <Nombre de la tabla>

2: WHERE <condición de busqueda>2: WHERE <condición de busqueda>

3: GROUP BY <lista de agrupamiento>3: GROUP BY <lista de agrupamiento>

4: HAVING <condición de busqueda>4: HAVING <condición de busqueda>

6: ORDER BY <lista de campos por la que se quiere ordenar el resultado>6: ORDER BY <lista de campos por la que se quiere ordenar el resultado>

Page 12: Tsql

Elementos de la declaración SELECTCláusula Expresión

SELECT <lista de Campo>

FROM <Nombre de la tabla>

WHERE <Condición de búsqueda>

GROUP BY <Agrupas por lista de campos>

ORDER BY <ordernar por lista de Campos>

Page 13: Tsql

Recuperando Columnas de una Tabla o Vista

• Use SELECT con una lista de columnas para mostrar esas columnas

• Use FROM para especificar una tabla o vista como origen de los datos que se van a mostrar

SELECT IdClientes, Nombres, Apellidos

FROM Clientes

SELECT IdClientes, Nombres, Apellidos

FROM Clientes

Cláusula Expresión

SELECT <selecciona lista de campos>

FROM <tabla fuente>

Page 14: Tsql

Usando cálculos en la cláusula SELECT

• Los cálculos son valores escalares, retornando un valor por fila.

• Using scalar expressions in the SELECT clause SELECT precio, cantidad, (precio * cantidad)

FROM detallefactura;

SELECT precio, cantidad, (precio * cantidad)

FROM detallefactura;

Operador Descripción

+ Suma o concatena

- Resta

* Multiplica

/ Divide

% Modulo

Page 15: Tsql

Usando operaciones de cálculo en la declaración SELECT

• Los cálculos son escalares, retornan un valor por fila

• Using scalar expressions in the SELECT clause SELECT unitprice, OrderQty, (unitprice * OrderQty)

FROM sales.salesorderdetail;

SELECT unitprice, OrderQty, (unitprice * OrderQty)

FROM sales.salesorderdetail;

Operador Descripción

+ Suma o concatenación

- Resta

* Multiplicación

/ División

% Porcentaje