Está en la página 1de 4

IN

SELECT cli.nombre, cli.id, pro.nombre, pro.precio, cli.provincia FROM productos as pro join clientes as cli on pro.id=cli.id WHERE cli.nombre IN ('Jos', 'Jesus Ernesto', 'Jos Alfredo') BULK INSERT productos FROM 'c:\RespaldosSQLServer2012\Exportacion Productos.csv' WITH (firstrow=2, FIELDTERMINATOR=';', ROWTERMINATOR='\n')

FUNCION BULK PARA RESTABLECER UNA TABLA DE RECUPERACION

TOP

SELECT TOP 5 pro.nombre AS 'Nombre del Producto', cli.nombre+' '+cli.apellido_1+''+cli.apellido_2 AS 'Nombre del Cliente', precio AS 'Precio del Producto' FROM dbo.productos AS pro join clientes as cli on pro.id=cli.id

JOIN

SELECT cli.nombre, cli.apellido_1, cli.apellido_2, cli.provincia, ped.idpedido AS 'Numero de Pedido' FROM clientes as cli join pedidos as ped on cli.id=ped.idcliente ORDER BY ped.idpedido

INNER JOIN

SELECT cli.nombre + ' '+ cli.apellido_1+ ' '+ cli.apellido_2 AS 'Nombre del Cliente', cli.provincia AS 'Ciudad', ped.idpedido AS 'Numero de Pedido', pro.nombre AS 'Nombre del Producto Pedido', pro.precio AS 'Precio del Producto' FROM clientes AS cli INNER JOIN pedidos AS ped ON cli.id=ped.idcliente INNER JOIN productos as pro ON ped.idpedido=pro.id ORDER BY ped.idpedido

SUM AGRUPADO

SELECT empleado, SUM(importe) AS 'TOTAL GASTADO' FROM dbo.pedidos_proveedores GROUP BY empleado ORDER BY [TOTAL GASTADO] DESC /* DEDVUELVE EL TOTAL GASTADO POR CADA EMPLEADO*/ SELECT proveedor, SUM(importe) AS 'TOTAL GASTADO' FROM dbo.pedidos_proveedores GROUP BY proveedor ORDER BY [TOTAL GASTADO] DESC /* DEVUELVE EL TOTAL GASTADO POR CADA PROVEEDOR*/

AVG

SELECT AVG(total) AS 'PROMEDIO', anio FROM dbo.facturas GROUP BY anio

BETWEEN

SELECT cli.nombre, cli.id, pro.nombre, pro.precio, cli.provincia FROM productos as pro join clientes as cli on pro.id=cli.id WHERE cli.id BETWEEN 3 AND 5 AND cli.provincia='Veracruz'

COUNT

SELECT COUNT(id) AS 'TOTAL DE MESES' FROM dbo.facturas WHERE (mes=3)

INSERT INTO

INSERT INTO dbo.productos (id, nombre, precio) values (9, 'producto9', 300)

GETDATE

SELECT {fn NOW()} AS 'FECHA DE PETICIN', anio, mes, dia, LEN(total) AS 'TOTAL DE CARACTERES', total, cliente FROM dbo.facturas /* Devuelve la fecha del dia actual sin Formato*/ SELECT CONVERT(VARCHAR(40), GETDATE(),106) AS 'FECHA', anio, mes, dia, LEN(total) AS 'TOTAL DE CARACTERES', total, cliente FROM dbo.facturas /* Devuelve la fecha del dia actual con formato dependiendo del numero que se elija*/

DISTINCT

SELECT COUNT(DISTINCT cliente) AS 'TOTAL DE LLAMADAS' FROM dbo.llamadas_entrantes WHERE (mes=1) AND (dia=30) /* Esta sentencia devuelve todas las llamadas del 30 de enero pero de los diferentes clientes*/

FULL JOIN

SELECT cli.nombre + ' '+ cli.apellido_1+ ' '+ cli.apellido_2 AS 'Nombre del Cliente', cli.provincia AS 'Ciudad', ped.idpedido AS 'Numero de Pedido' FROM clientes AS cli FULL JOIN pedidos AS ped ON cli.id=ped.idcliente ORDER BY ped.idpedido

LEFT JOIN

SELECT cli.nombre + ' '+ cli.apellido_1+ ' '+ cli.apellido_2 AS 'Nombre del Cliente', cli.provincia AS 'Ciudad', ped.idpedido AS 'Numero de Pedido' FROM clientes AS cli LEFT JOIN pedidos AS ped ON cli.id=ped.idcliente ORDER BY ped.idpedido

RIGTH JOIN

SELECT cli.nombre + ' '+ cli.apellido_1+ ' '+ cli.apellido_2 AS 'Nombre del Cliente', cli.provincia AS 'Ciudad', ped.idpedido AS 'Numero de Pedido' FROM clientes AS cli RIGHT JOIN pedidos AS ped ON cli.id=ped.idcliente ORDER BY ped.idpedido

LEN PARA CONTAR LOS NUMERO DE CARACTERES

SELECT {fn NOW()} AS 'FECHA DE PETICIN', anio, mes, dia, LEN(total) AS 'TOTAL DE CARACTERES', total, cliente FROM dbo.facturas /* Devuelve la fecha del dia actual sin Formato La instruccion LEN contabiliza el numero de caracteres del capo que se selecciona LEN(campo)*/ SELECT CONVERT(VARCHAR(40), GETDATE(),106) AS 'FECHA', anio, mes, dia, LEN(total) AS 'TOTAL DE CARACTERES', total, cliente FROM dbo.facturas /* Devuelve la fecha del dia actual con formato dependiendo del numero que se elija*/

LIKE

SELECT cli.nombre, cli.id, pro.nombre, pro.precio, cli.provincia FROM productos as pro join clientes as cli on pro.id=cli.id WHERE (cli.nombre LIKE 'J%') SELECT cli.nombre, cli.id, pro.nombre, pro.precio, cli.provincia FROM productos as pro join clientes as cli on pro.id=cli.id WHERE (cli.nombre LIKE '%a') SELECT cli.nombre, cli.id, pro.nombre, pro.precio, cli.provincia FROM productos as pro join clientes as cli on pro.id=cli.id WHERE (cli.nombre LIKE '%os%')

MIN y MAX

SELECT MAX(total) AS 'TOTAL MINIMO/MAXIMO' FROM dbo.facturas UNION SELECT MIN(total) FROM dbo.facturas

OR

SELECT cli.nombre, cli.apellido_1, pro.nombre, pro.precio, cli.provincia FROM productos as pro join clientes as cli on pro.id=cli.id WHERE (cli.nombre LIKE '%Vicente%') OR (cli.apellido_1 LIKE '%Vicente%')

PRIMER/ULTIMO REGISTRO EN UNA TABLA


SELECT TOP(1) * FROM dbo.facturas /* Devuelve el Primer registro de la tabla*/

SELECT TOP(1) * FROM dbo.facturas /*Devuelve el Ultimo dato del registro de la tabla*/ ORDER BY id DESC

SUBSTRING

SELECT SUBSTRING(nombre_proyecto,1,3) AS 'DEPARTAMENTO', SUBSTRING(nombre_proyecto,5,30) AS 'PROYECTO', empleado AS 'NOMBRE DEL EMPLEADO' FROM dbo.proyectos

SUM/IN

SELECT SUM(total) AS 'SUMA TOTAL' FROM dbo.facturas WHERE (anio='2013') AND mes IN ('01', '02')

UNION ALL
SELECT * FROM comerciales_internos AS coint UNION ALL SELECT * FROM comerciales_externos AS coint

UPDATE

update dbo.productos set precio = 100 WHERE id=3

UPPER/LOWER MAYUSCULAS/MINUSCULAS
SELECT LOWER(nombre) AS 'NOMBRES', UPPER(apellido_1) AS 'APELLIDO PATERNO', UPPER(apellido_2) AS 'APELLIDO MATERNO' FROM dbo.clientes ORDER BY [NOMBRES] DESC

DELETE

DELETE FROM productos WHERE id>5 AND id <8

CONSULTAS TRANSACT SQL


/*DECLARE @nombre varchar(300) --set @mensaje= 'Estoy declarando una variable en sql Server' SELECT @nombre=nombre FROM clientes WHERE id='4' print @nombre */ /*DECLARE @variable1 INT DECLARE @variable2 INT SET @variable1=21 SET @variable2=9 PRINT @variable1 PRINT 'entre' PRINT @variable2 PRINT 'cabe a' PRINT @variable1 / @variable2 PRINT 'Y me sobran' PRINT @variable1 % @variable2*/ /*DECLARE @variable1 INT DECLARE @variable2 INT SET @variable1=21 SET @variable2=9 IF @variable1=21 PRINT 'VERDADERO' ELSE PRINT 'FALSO'*/ /*DECLARE @variable1 INT DECLARE @variable2 INT SET @variable1=7 SET @variable2=9 IF @variable1 > @variable2 PRINT 'VERDADERO' ELSE PRINT 'FALSO'*/ /*DECLARE @contador INT SET @contador=0 WHILE @contador < 10 BEGIN print 'HOLA MUNDO' SET @contador=@contador+1 END*/ BEGIN TRY DECLARE @cliente VARCHAR(100) DECLARE @mensaje VARCHAR(100) DECLARE @pagado INT DECLARE @importepagado INT DECLARE @importedebido INT SET @cliente= 'cliente3' SET @importedebido= (SELECT importe FROM facturas_pagadas WHERE cliente=@cliente) SET @importepagado= (SELECT pagado FROM facturas_pagadas WHERE cliente=@cliente) SET @pagado=@importedebido-@importepagado --PRINT 40/0 PRINT @cliente PRINT'DEBE' PRINT @importedebido PRINT @cliente PRINT 'HA PAGADO' PRINT @importepagado PRINT @cliente PRINT 'LE RESTA POR PAGAR' PRINT @pagado SET @mensaje= (CASE (@importedebido-@importepagado) WHEN 0 THEN 'HA PAGADO EL TOTAL' WHEN @importedebido THEN 'NO HA PAGADO NADA' ELSE 'HA PAGADO CIERTA PARTE' END) PRINT @mensaje END TRY BEGIN CATCH PRINT 'Ha habido un Error' PRINT ERROR_MESSAGE() END CATCH