INSTRUCCIÓN SQL SELECT_Tomado de DataBase Administrator Amparo Olaya Benavides
SENTENCIA |
SINTAXIS |
EJEMPLO |
SELECT |
SELECT column1, column2, ... |
SELECT CustomerName, City FROM Customers; |
SELECT DISTINCT. se usa para devolver solo valores distintos
(diferentes). |
SELECT DISTINCT column1, column2, ... |
SELECT DISTINCT Country FROM Customers; |
WHERE Se utiliza para extraer solo
aquellos registros que cumplen una condición específica. |
SELECT column1, column2, ... |
SELECT * FROM Customers |
La cláusula WHERE se puede combinar
con los operadores |
SELECT column1, column2, ... SELECT column1, column2, ... SELECT column1, column2, ... |
SELECT * FROM Customers SELECT * FROM Customers SELECT * FROM Customers |
ORDER BY Se utiliza para ordenar el conjunto
de resultados en orden ascendente o descendente |
SELECT column1, column2, ... |
SELECT * FROM Customers |
LIMIT se utiliza para especificar el
número de registros que se devolverán |
SELECT column_name(s) |
SELECT * FROM Customers |
MIN Devuelve el valor más pequeño de la
columna seleccionada |
SELECT MIN(column_name) |
SELECT MIN(Price) AS SmallestPrice |
MAX Devuelve el valor más grande de la
columna seleccionada |
SELECT MAX(column_name) |
SELECT MAX(Price) AS LargestPrice |
COUNT devuelve el
número de filas que coincide con un criterio específico |
SELECT COUNT(column_name) |
SELECT COUNT(ProductID) |
AVG devuelve el valor promedio de una
columna numérica |
SELECT AVG(column_name) |
SELECT AVG(Price) |
SUM devuelve la suma total de una
columna numérica. |
SELECT SUM (column_name) |
SELECT SUM(Quantity) |
El operador |
SELECT column1, column2, ... |
· Selecciona
todos los clientes con un CustomerName que comienza con "a" SELECT * FROM Customers · Selecciona
todos los clientes con un CustomerName que termina en "a" SELECT * FROM Customers · selecciona
todos los clientes con un CustomerName que tienen "o" en cualquier
posición SELECT * FROM Customers · Selecciona
todos los clientes con un CustomerName que tienen "r" en la segunda
posición SELECT * FROM Customers ·
Selecciona a todos los clientes con
un CustomerName que comienza con "a" y tiene al menos 3 caracteres
de longitud SELECT * FROM Customers · selecciona
a todos los clientes con un ContactName que comienza con "a" y
termina con "o" SELECT * FROM Customers · selecciona
a todos los clientes con un CustomerName que NO comienza con "a" SELECT * FROM Customers |
IN permite especificar varios valores
en una clausula es una abreviatura de múltiples |
SELECT column_name(s) SELECT column_name(s) |
· selecciona
todos los clientes que se encuentran en "Alemania",
"Francia" o "Reino Unido" SELECT * FROM Customers · selecciona
todos los clientes que NO se encuentran en "Alemania",
"Francia" o "Reino Unido" SELECT * FROM Customers · selecciona
todos los clientes que son de los mismos países que los proveedores SELECT * FROM Customers |
BETWEEN selecciona valores dentro de un
rango determinado. Los valores pueden ser números, texto o fechas |
SELECT column_name(s) |
SELECT * FROM Products SELECT * FROM Products ·
selecciona todos los productos con
un precio entre 10 y 20. Además; no mostrar productos con un CategoryID
de 1,2 o 3 SELECT * FROM Products ·
selecciona todos los productos con
un ProductName entre Carnarvon Tigers y Mozzarella di Giovanni SELECT * FROM Products · selecciona
todos los productos con un ProductName que no se encuentra entre Carnarvon
Tigers y Mozzarella di Giovanni SELECT * FROM Products · selecciona todos los pedidos con un
OrderDate entre '01 -Julio-1996 'y '31 -Julio-1996' SELECT * FROM Orders |
AS se utilizan para dar un nombre
temporal a una tabla, o una columna de una tabla |
SELECT column_name AS alias_name SELECT column_name(s) |
SELECT CustomerID AS ID,
CustomerName AS Customer SELECT CustomerName AS Customer,
ContactName AS [Contact Person] ·
crea un alias llamado
"Dirección" que combina cuatro columnas (Dirección, Código Postal,
Ciudad y País) SELECT CustomerName, Address + ', ' +
PostalCode + '
' + City + ', ' +
Country AS Address SELECT o.OrderID, o.OrderDate, c.CustomerName Equivalente: SELECT Orders.OrderID, Orders.OrderDate,
Customers.CustomerName |
Join se utiliza para combinar filas de
dos o más tablas, según una columna relacionada entre ellas |
|
|
(INNER)
JOIN Devuelve registros que tienen
valores coincidentes en ambas tablas |
SELECT column_name(s) |
·
selecciona todos los pedidos con
información del cliente SELECT Orders.OrderID, Customers.CustomerName ·
selecciona
todos los pedidos con información del cliente y de envio SELECT Orders.OrderID, Customers.CustomerName,
Shippers.ShipperName SELECT customers.customername,
employees.lastname, orders.orderid from ( (orders inner join customers on orders.customerID = customers.customerId)
orders inner join employees on orders.employeeID = employees.employeeId ); |
LEFT JOIN devuelve todos los registros de la
tabla izquierda (tabla1) y los registros coincidentes de la tabla derecha
(tabla2) |
SELECT column_name(s) |
Seleccionará a todos los clientes y
cualquier pedido que puedan tener: SELECT Customers.CustomerName, Orders.OrderID |
RIGHT JOIN devuelve todos los registros de la
tabla derecha (tabla2) y los registros coincidentes de la tabla izquierda
(tabla1) |
SELECT column_name(s) |
Devuelve todos los empleados y
cualquier pedido que hayan realizado SELECT Orders.OrderID,
Employees.LastName, Employees.FirstName |
FULL OUTER
JOIN devuelve todos los registros cuando
hay una coincidencia en los registros de la tabla izquierda (tabla1) o
derecha (tabla2) |
SELECT column_name(s) |
SELECT Customers.CustomerName, Orders.OrderID |
SQL Self
Join Una autocombinación es una
combinación normal, pero la tabla se une a sí misma |
SELECT column_name(s) |
Hace coincidir los clientes que son de la misma ciudad SELECT A.CustomerName AS CustomerName1,
B.CustomerName AS CustomerName2, A.City |
UNION se utiliza para combinar un
conjunto de resultados de dos o más UNION ALL Permite
valores duplicados |
SELECT column_name(s) FROM table1 SELECT column_name(s) FROM table1 |
SELECT City FROM Customers SELECT City, Country FROM Customers SELECT 'Customer' AS Type, ContactName, City, Country |
GROUP BY agrupa las filas que tienen los
mismos valores en filas de resumen, como "encontrar el número de
clientes en cada país" |
SELECT column_name(s) |
enumera el número de clientes en
cada país SELECT COUNT(CustomerID), Country SELECT COUNT(CustomerID), Country numera el número de pedidos
enviados por cada envio SELECT Shippers.ShipperName, COUNT(Orders.OrderID) AS NumberOfOrders FROM Orders |
HAVING |
SELECT column_name(s) |
enumera el número de clientes en
cada país. Incluya solo países con más de 5 clientes SELECT COUNT(CustomerID), Country SELECT COUNT(CustomerID), Country empleados que han registrado más de
10 pedidos SELECT Employees.LastName, COUNT(Orders.OrderID) AS NumberOfOrders SELECT Employees.LastName, COUNT(Orders.OrderID) AS NumberOfOrders |
EXISTS se utiliza para probar la
existencia de cualquier registro en una subconsulta (devuelve VERDADERO si la
subconsulta devuelve uno o más registros) |
SELECT column_name(s) |
SELECT SupplierName SELECT SupplierName |
INSERT
INTO SELECT copia datos de una tabla y los
inserta en otra tabla |
INSERT INTO table2 INSERT INTO table2 (column1, column2, column3, ...) |
INSERT INTO Customers
(CustomerName, City, Country) INSERT INTO Customers (CustomerName,
ContactName, Address, City, PostalCode, Country) INSERT INTO Customers
(CustomerName, City, Country) |
CASE |
CASE |
SELECT OrderID, Quantity, SELECT CustomerName, City, Country |
No hay comentarios.:
Publicar un comentario