IMPLEMENTACIÓN DE BASESDE DATOS
M.C. OMAR JASSO L.INTRODUCCIÓN A TRANSACT-SQL1 INTRODUCCION A TRANSACT-SQL1.1 Consultas de selección1.2 Criterios de selec...
M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓNLas consultas de selección se utilizan para indicar al motor de datos que devu...
M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓN1 Ordenar los registrosAdicionalmente se puede especificar el orden en que se ...
M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓN2.3 Consultas con PredicadoEl predicado se incluye entre la clausula y el prim...
M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓNTOP:Devuelve un cierto número de registros que entran entre al principio o al ...
M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓNDISTINCT:Omite los registros que contienen datos duplicados en los campos sele...
M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓNAliasEn determinadas circunstancias es necesario asignar un nombre a alguna co...
M.C. OMAR JASSO L.INTRODUCCIÓN A TRANSACT-SQL1 INTRODUCCION A TRANSACT-SQL1.1 Consultas de selección1.2 Criterios de selec...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNLa cláusula WHERELa cláusula WHERE puede usarse para determinar qué registros d...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNLa cláusula WHERELista todos los registros de la tabla ÓRDENES realizadas por e...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNOperadores LógicosLos operadores lógicos soportados por SQL son: AND, OR, XOR, ...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNLa cláusula WHERELista todos los registros de la tabla ÓRDENES realizadas por e...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNLa cláusula WHERERealiza la misma consulta, pero ahora listando solo las órdene...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNIntérvalos de Valores (operador BETWEEN)Para indicar que deseamos recuperar los...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNEl Operador LikeSe utiliza para comparar una expresión de cadena con un modelo ...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNEl Operador LikeIMPLEMENTACIÓN DE BASES DE DATOSComodín Descripción% Cualquier ...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNEl ejemplo siguiente devuelve los datos que comienzan con la letra P seguido de...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNEl operador LikeLista todas las órdenes y sus campos donde el país de envío (Sh...
M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNEl Operador InEste operador devuelve aquellos registros cuyo campo indicado coi...
M.C. OMAR JASSO L.INTRODUCCIÓN A TRANSACT-SQL1 INTRODUCCION A TRANSACT-SQL1.1 Consultas de selección1.2 Criterios de selec...
M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS
Upcoming SlideShare
Loading in …5
×

Introducción a sql consultas y criterios de selección

8,915 views

Published on

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
8,915
On SlideShare
0
From Embeds
0
Number of Embeds
5,211
Actions
Shares
0
Downloads
136
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Introducción a sql consultas y criterios de selección

  1. 1. IMPLEMENTACIÓN DE BASESDE DATOS
  2. 2. M.C. OMAR JASSO L.INTRODUCCIÓN A TRANSACT-SQL1 INTRODUCCION A TRANSACT-SQL1.1 Consultas de selección1.2 Criterios de selección1.3 Agrupamiento de registros y funciones agregadas1.4 Consultas de actualización1.5 Subconsultas1.6 Consultas y referencias cruzadas1.7 Consultas de unión interna1.8 Consultas de unión externaIMPLEMENTACIÓN DE BASES DE DATOS
  3. 3. M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓNLas consultas de selección se utilizan para indicar al motor de datos que devuelva información delas bases de datos, esta información es devuelta en forma de conjunto de registros que se puedenalmacenar en un objeto recordset. Este conjunto de registros es modificable.2.1 Consultas básicasLa sintaxis básica de una consulta de selección es la siguiente:SELECT Campos FROM Tabla;En donde campos es la lista de campos que se deseen recuperar y tabla es el origen de los mismos,por ejemplo:SELECT CompanyName, Phone FROM CustomersEsta consulta devuelve un recordset con el campo nombre de la compañia y teléfono de la tablaclientes.IMPLEMENTACIÓN DE BASES DE DATOS
  4. 4. M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓN1 Ordenar los registrosAdicionalmente se puede especificar el orden en que se desean recuperar los registros de las tablasmediante la claúsula ORDER BY Lista de Campos, en donde Lista de campos representa los camposa ordenar.Ejemplo: SELECT PostalCode, CompanyName, Phone FROM Customers ORDER BYCompanyNameEsta consulta devuelve los campos CodigoPostal, Nombre de la compañia, Telefono de la tablaClientes ordenados por el campo Nombre de la compañia.Se pueden ordenar los registros por mas de un campo, como por ejemplo:SELECT PostalCode, CompanyName, Phone FROM Customers ORDER BYPostalCode,CompanyNameIncluso se puede especificar el orden de los registros: ascendente mediante la claúsula (ASC -setoma este valor por defecto) ó descendente (DESC)SELECT PostalCode, CompanyName, Phone FROM Customers ORDER BY PostalCode DESC ,CompanyName ASC;IMPLEMENTACIÓN DE BASES DE DATOS
  5. 5. M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓN2.3 Consultas con PredicadoEl predicado se incluye entre la clausula y el primer nombre del campo a recuperar, los posiblespredicados son:ALL:Si no se incluye ninguno de los predicados se asume ALL, es decir, se le indica al Motor de la basede datos que devuelva todas las filas o registros que contenga la tabla o tablas que listemos en lacláusula FROM.EJ: SELECT ALL Nombre, Apellido FROM Estudiantes ORDER BY Promedio DESC;No es necesario colocar ALL, es el predicado por defecto. La siguiente consulta sería equivalenteEJ: SELECT Nombre, Apellido FROM Estudiantes ORDER BY Promedio DESC;IMPLEMENTACIÓN DE BASES DE DATOSPredicado DescripciónALL Devuelve todos los registros de la tablaTOP Devuelve un determinado número de registros de la tablaDISTINCT Omite los registros cuyos campos seleccionados coincidan totalmente
  6. 6. M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓNTOP:Devuelve un cierto número de registros que entran entre al principio o al final de un rangoespecificado por una cláusula ORDER BY. Supongamos que queremos recuperar los nombres de los5 mejores estudiantes de un curso:SELECT TOP 5 Nombre, Apellido FROM Estudiantes ORDER BY Promedio DESC;Si no se incluye la cláusula ORDER BY, la consulta devolverá un conjunto arbitrario de 5 registros dela tabla Estudiantes.El predicado TOP no elige entre valores iguales. En el ejemplo anterior, si el promedio número 5 y 6son iguales, la consulta devolverá 6 registros.Se puede utilizar la palabra reservada PERCENT para devolver un cierto porcentaje de registros quecaen al principio o al final de un rango especificado por la cláusula ORDER BY.SELECT TOP 10 PERCENT Nombre, Apellido FROM Estudiantes ORDER BY PromedioDESC;El valor que va a continuación de TOP debe ser un Integer sin signo.TOP no afecta a la posible actualización de la consulta.IMPLEMENTACIÓN DE BASES DE DATOS
  7. 7. M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓNDISTINCT:Omite los registros que contienen datos duplicados en los campos seleccionados. Para que losvalores de cada campo listado en la instrucción SELECT se incluyan en la consulta deben ser únicos.Por ejemplo, varios empleados listados en la tabla Empleados pueden tener el mismo apellido. Sidos registros contienen López en el campo Apellido, la siguiente instrucción SQL devuelve un únicoregistro:SELECT DISTINCT Apellido FROM EmpleadosCon otras palabras el predicado DISTINCT devuelve aquellos registros cuyos campos indicados en lacláusula SELECT posean un contenido diferente. El resultado de una consulta que utiliza DISTINCTno es actualizable y no refleja los cambios subsiguientes realizados por otros usuarios.select distinct country from Customersselect distinct country,region from Customersselect distinct country,region,City from CustomersIMPLEMENTACIÓN DE BASES DE DATOS
  8. 8. M.C. OMAR JASSO L.1.1 CONSULTAS DE SELECCIÓNAliasEn determinadas circunstancias es necesario asignar un nombre a alguna columna determinada deun conjunto devuelto. Para resolver esto tenemos la palabra reservada AS que se encarga deasignar el nombre que deseamos a la columna deseada.Sintaxis: SELECT campo AS alias FROM tablaEj: SELECT Apellido AS Empleado FROM EmpleadosIMPLEMENTACIÓN DE BASES DE DATOS
  9. 9. M.C. OMAR JASSO L.INTRODUCCIÓN A TRANSACT-SQL1 INTRODUCCION A TRANSACT-SQL1.1 Consultas de selección1.2 Criterios de selección1.3 Agrupamiento de registros y funciones agregadas1.4 Consultas de actualización1.5 Subconsultas1.6 Consultas y referencias cruzadas1.7 Consultas de unión interna1.8 Consultas de unión externaIMPLEMENTACIÓN DE BASES DE DATOS
  10. 10. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNLa cláusula WHERELa cláusula WHERE puede usarse para determinar qué registros de las tabla(s) listadas en la cláusulaFROM aparecerán en los resultados de la instrucción SELECT.WHERE es opcional, pero cuando aparece debe ir a continuación de FROM.Sintaxis: SELECT Campo1, …. Campo N FROM tabla(s) WHERE criterio1 …. Criterio NSELECT Apellidos, Salario FROM Empleados WHERE Salario > 21000SELECT Id_Producto, Existencias FROM Productos WHERE Existencias <= Nuevo_PedidoSELECT * FROM Pedidos WHERE Fecha_Envio = ‘2010-22-03’SELECT Apellidos, Nombre FROM Empleados WHERE Apellidos = King’IMPLEMENTACIÓN DE BASES DE DATOS
  11. 11. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNLa cláusula WHERELista todos los registros de la tabla ÓRDENES realizadas por el vendedor 3. Muestra únicamente loscampos ID, ID del cliente, Fecha (Order Date) y País y Ciudad de envió (ShipCountry, ShipCity)select orderid,CustomerID,OrderDate,ShipCountry,ShipCity from orders where EmployeeID=3Realiza la misma consulta anterior nombrando los campos a mostrar en español:select orderid as IdOrden,CustomerID as IdCliente,OrderDate as Fecha,ShipCountryPaisDeEnvio,ShipCity "Ciudad de envio" from orders where EmployeeID=3Realiza la misma consulta, pero ahora listando solo las órdenes cuyo país de envío esFrancia(France)select orderid as IdOrden,CustomerID as IdCliente,OrderDate as Fecha,ShipCountryPaisDeEnvio,ShipCity "Ciudad de envio" from orders where ShipCountry=france‘Lista todos los registros de la tabla órdenes cuya fecha de entrega (RequiredDate) es 26 de marzode 1998. Muestra todos los camposselect * from orders where RequiredDate=26-03-1998IMPLEMENTACIÓN DE BASES DE DATOS
  12. 12. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNOperadores LógicosLos operadores lógicos soportados por SQL son: AND, OR, XOR, Is y Not.A excepción de los dos últimos todos poseen la siguiente sintaxis:<expresión1> operador <expresión2>En donde expresión1 y expresión2 son las condiciones a evaluar, el resultado de la operación varíaen funcióndel operador lógico.Si a cualquiera de las anteriores condiciones le anteponemos el operador NOT el resultado de laoperación será el contrario al devuelto sin el operador NOT.SELECT * FROM Empleados WHERE Edad > 25 AND Edad < 50SELECT * FROM Empleados WHERE (Edad > 25 AND Edad < 50) OR Sueldo = 100SELECT * FROM Empleados WHERE NOT Estado = Soltero’SELECT * FROM Empleados WHERE (Sueldo > 100 AND Sueldo < 500) OR (Provincia = MadridAND Estado = Casado);El último operador denominado Is se emplea para comparar dos variables de tipo objeto <Objeto1>Is <Objeto2>. Este operador devuelve verdad si los dos objetos son iguales.SELECT * FROM Empleados WHERE FechaNacimiento IS NULLIMPLEMENTACIÓN DE BASES DE DATOS
  13. 13. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNLa cláusula WHERELista todos los registros de la tabla ÓRDENES realizadas por el vendedor 3 o el 6. Muestraúnicamente los campos ID, ID del cliente, Fecha (Order Date) y País y Ciudad de envió (ShipCountry,ShipCity)select orderid,CustomerID,OrderDate,ShipCountry,ShipCity from orders where EmployeeID=3 orEmployeeID=6Realiza la misma consulta mostrando solo los registros de órdenes del cliente con id SAVEA y cuyomodo de envío (ShipVia) es el 3select orderid,CustomerID,OrderDate,ShipCountry,ShipCity from orders whereCustomerID=‘savea’ and ShipVia=3IMPLEMENTACIÓN DE BASES DE DATOS
  14. 14. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNLa cláusula WHERERealiza la misma consulta, pero ahora listando solo las órdenes cuyo país de envío esFrancia(France) y el id del empleado es 7 O las órdenes con fecha (Order date) a partir deoctubre de 1997select orderid,CustomerID,OrderDate,ShipCountry,ShipCity from orders where(ShipCountry=france and EmployeeID=7) or OrderDate >=01-10-1997Lista todos los registros de la tabla órdenes cuya capacidad de carga (Freight) esté entre 100 y 200.Muestra todos los camposselect * from orders where freight >=100 and freight<=200Muestra todas las órdenes con todos sus campos que no han sido embarcadas o enviadas(ShippedDate)Select * from Orders where ShippedDate is nullIMPLEMENTACIÓN DE BASES DE DATOS
  15. 15. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNIntérvalos de Valores (operador BETWEEN)Para indicar que deseamos recuperar los registros según el intérvalo de valores de un campoemplearemos el operador Between cuya sintaxis es:(campo [Not] Between valor1 And valor2 (la condición Not es opcional)En este caso la consulta devolvería los registros que contengan en "campo"un valor incluido en el intervalo valor1, valor2 (ambos inclusive).Si anteponemos la condición Not devolverá aquellos valores no incluidos en el intervalo.SELECT * FROM Pedidos WHERE CodPostal Between 28000 And 28999Lista todos los registros de la tabla órdenes cuya capacidad de carga (Freight) esté entre 100 y 200.Muestra todos los camposSelect * From Orders Where Freight between 100 and 200IMPLEMENTACIÓN DE BASES DE DATOS
  16. 16. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNEl Operador LikeSe utiliza para comparar una expresión de cadena con un modelo en una expresión SQL. Su sintaxises:Expresión Like modeloEn donde expresión es una cadena modelo o campo contra el que se compara expresión. Se puedeutilizar el operador Like para encontrar valores en los campos que coincidan con el modeloespecificado. Pormodelo puede especificar un valor completo (Ana María), o se pueden utilizarcaracteres comodín como los reconocidos por el sistema operativo para encontrar un rango devalores (Like An%).El operador Like se puede utilizar en una expresión para comparar un valor de un campo con unaexpresión de cadena. Por ejemplo, si introduce Like ‘C%’ en una consulta SQL, la consulta devuelvetodos los valores de campo que comiencen por la letra C.IMPLEMENTACIÓN DE BASES DE DATOS
  17. 17. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNEl Operador LikeIMPLEMENTACIÓN DE BASES DE DATOSComodín Descripción% Cualquier cadena de 0 a más caracteresEj: Where title like ‘%computer%’_ Cualquier carácter. Ej: WHERE au_fname LIKE ‘_ean’[] Intérvalo de caracteres. Ej: WHERE au_lname LIKE ‘[C-P]arsen’[^] Cualquier intérvalo de caracteres que no se encuentre en la listaEj: WHERE au_lname LIKE ‘[^a]%’
  18. 18. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNEl ejemplo siguiente devuelve los datos que comienzan con la letra P seguido de cualquier letraentre A y F y enseguida de 3 dígitos:Like ‘P[A-F]___’Coincide No Coincide‘aa’, ‘aBa’, ‘aBBBa’ ‘aBC’‘a*a’ ‘aaa’‘abcdefg’, ‘abc’ ‘cab’, ‘aab’‘aaa’, ‘a3a’, ‘aBa’ ‘aBBBa’‘a0a’, ‘a1a’, ‘a2a’ ‘aaa’, ‘a10a’IMPLEMENTACIÓN DE BASES DE DATOS
  19. 19. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNEl operador LikeLista todas las órdenes y sus campos donde el país de envío (Ship Country) empieza con la letra sselect * from orders where ShipCountry like ‘S%’Lista todas las órdenes y sus campos donde el nombre del país de envío (Ship Country) lleve lasletras deselect * from orders where ShipCountry like ‘%de%’Lista todas las órdenes y sus campos donde la segunda letra ID del cliente sea una ASelect * from Orders where CustomerID like ‘_A%’IMPLEMENTACIÓN DE BASES DE DATOS
  20. 20. M.C. OMAR JASSO L.1.2CRITERIOS DE SELECCIÓNEl Operador InEste operador devuelve aquellos registros cuyo campo indicado coincide con alguno de los indicados en una lista. Susintaxis es:Expresión [Not] In(valor1, valor2, . . .)SELECT * FROM Pedidos WHERE Provincia In (Madrid, Barcelona, Sevilla);IMPLEMENTACIÓN DE BASES DE DATOS
  21. 21. M.C. OMAR JASSO L.INTRODUCCIÓN A TRANSACT-SQL1 INTRODUCCION A TRANSACT-SQL1.1 Consultas de selección1.2 Criterios de selección1.3 Agrupamiento de registros y funciones agregadas1.4 Consultas de actualización1.5 Subconsultas1.6 Consultas y referencias cruzadas1.7 Consultas de unión interna1.8 Consultas de unión externaIMPLEMENTACIÓN DE BASES DE DATOS
  22. 22. M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

×