SQL repaso.pdf
Document Details
Uploaded by AffirmativePlum
Colegio Valle del Miro
Tags
Full Transcript
https://www.w3schools.com/sql/trysql.asp?filename=trysql_select_all 1. Mostrar City como ciudad y PostalCode CodigoPostal SELECT distinct City As 'ciudad', PostalCode As CodigoPostal FROM [Customers] 2. Mostrar nombre y ciudad de los clientes de México SELECT CustomerName, City FROM Customers WHERE...
https://www.w3schools.com/sql/trysql.asp?filename=trysql_select_all 1. Mostrar City como ciudad y PostalCode CodigoPostal SELECT distinct City As 'ciudad', PostalCode As CodigoPostal FROM [Customers] 2. Mostrar nombre y ciudad de los clientes de México SELECT CustomerName, City FROM Customers WHERE City = 'México D.F.'; 3. Seleccionar nombre y precio de todos los productos que sean =, > 10 SELECT ProductName,Price FROM [Products] WHERE Price >=10; 4. Seleccionar todos los productos cuyo precio sea mayor o igual de 20 en orden asc SELECT * FROM [Products] WHERE Price <=20 ORDER BY Price ASC; 5. Mostrar los campos ContactName, City, Country de la tabla Customers cuyo país sea Venezuela, y ordenar el campo ContactName de manera ascendente SELECT ContactName, City, Country FROM Customers WHERE Country = 'Venezuela' ORDER BY ContactName DESC; 6. Mostrar los campos ProductName, CategoryID, Price de la tabla Productos cuyo precio sea menor que 20 y su CategoryID sea 2 SELECT ProductName, CategoryID, Price FROM [Products] WHERE Price <20 AND CategoryID = 2; 7. Mostrar todos los campos de la tabla productos cuyo SupplierID sea 1 o su CategoryID sea 4 y su precio sea mayor o igual que 10, ordenado de manera desc SELECT * FROM [Products] WHERE (SupplierID = 1 OR CategoryID = 4) AND Price >=10 ORDER BY Price DESC; 8. Mostrar todos los campos de la tabla Suppliers cuyo país no sea Estados Unidos SELECT * FROM Suppliers WHERE Country != "USA"; 9. Mostrar todos los campos de la tabla Suppliers cuyo país no sea Estados Unidos y el SupplierID no sea igual a 6 SELECT * FROM Suppliers / SELECT * FROM Suppliers WHERE NOT Country = "USA" / WHERE NOT (Country = "USA" AND SupplierID = 6); AND NOT SupplierID = 6; / 10. Mostrar todos los registros de la tabla Customers donde la segunda letra sea m, la tercera sea a, la cuarta sea r, la quinta sea i, del campo ContactName SELECT * FROM Customers WHERE ContactName LIKE "mari%"; 1 “%” sustituye cualquier número de caracteres 11. Mostrar todos los registros de la tabla Customers donde la cuarta letra es la a del campo ContactName SELECT * FROM Customers WHERE ContactName LIKE "___a%"; 12. Mostrar todos los campos de la tabla Customers cuyo país pertenezca a la siguiente lista: Alemania, Suecia, España SELECT * FROM Customers WHERE Country IN ('Germany', 'Sweden', 'Spain'); SELECT * FROM Customers WHERE Country = ‘Germany’ OR Country = ‘Sweden’ OR Country = ‘Spain’; 13. Muestra todos los campos de la tabla Customers cuyo país no sea uno de los siguientes: Alemania, Francia, Reino Unido SELECT * FROM Customers WHERE Country NOT IN ('Germany', 'Sweden', 'Spain'); SELECT * FROM Customers WHERE NOT Country = ‘Germany’ OR Country = ‘Sweden’ OR Country = ‘Spain’; 14. Muestra todos los campos de la tabla Products cuyo precio esté entre 10 y 20 SELECT * FROM Products WHERE Price BETWEEN 10 AND 20; SELECT * FROM Products WHERE Price >= 10 AND Price <= 20; 15. Muestra todos los campos de la tabla productos cuyo precio está entre 10 y 20 y la CategoryID nos sea ni 1, ni 2, ni 3 SELECT * FROM Products WHERE Price BETWEEN 10 AND 20 AND CategoryID NOT IN (1,2,3); / SELECT * FROM Products / WHERE Price BETWEEN 10 AND 20 / AND CategoryID NOT BETWEEN 1 AND 3; 16. Muestra el campo ProductoID como ‘Orden’ el campo ProductName como ‘Producto’ y el campo Price como ‘Coste’ de los artículos de la tabla Products cuyo precio esté entre 4 y 10 y su CategoryID sea menor o igual que 10 o su ProductID sea mayor que 20 de manera DESC SELECT ProductID AS Orden, ProductName AS Producto, Price AS Coste FROM Products WHERE Price BETWEEN 4 AND 10 AND CategoryID <= 10 OR ProductID > 20 ORDER BY Price, ProductID DESC; 2 17. Muestra todos los campos de todos los productos cuyo nombre esté alfabéticamente entre ‘Carnarvon Tigers’ y ‘Mozzarella di Giovani’ ordenados por nombre de producto de manera ascendente SELECT * FROM [Products] WHERE ProductName BETWEEN "Carnarvon Tigers" AND "Mozzarella di Giovanni" ORDER BY ProductName ASC; 18. Mostrar todos los campos de la tabla Orders cuya fecha de compra sea más tarde del 1 de junio 1996 y más pronto que el 31 de julio de 1996 SELECT * FROM [Orders] WHERE OrderDate BETWEEN "1996-07-01" AND "1996-07-31"; 19. Mostrar todos los campos de las 3 primeras entradas de la tabla Customers SELECT * FROM [Customers] WHERE CustomerID IN (1,2,3); SELECT * FROM [Customers] LIMIT 3; 20. Mostrar todos los campos del 50 % inicial de entradas de la tabla Customers 21. Mostrar los tres primeros registros de la tabla Customers cuyo país sea Alemania SELECT * FROM [Customers] WHERE country= 'Germany' LIMIT 3; 22. Mostrar en una única tabla los campos CustomerName como “Nombre” y ContactName como “Contacto” de la tabla Customers, junto con los campos SupplierName como “Nombre” y ContactName como “Contacto” de la tabla Suppliers SELECT CustomerName AS Nombre, ContactName AS Contacto FROM [Customers] UNION SELECT SupplierName AS Nombre, ContactName AS Contacto FROM [Suppliers]; 23. Mostrar en una única tabla el campo City como “Ciudad” de los registros de la tabla Customers y Suppliers ordenados alfabéticamente por nombre de ciudad de manera ascendente SELECT City AS Ciudad FROM Customers UNION SELECT City AS Ciudad FROM Suppliers ORDER BY Ciudad ASC; 24. Mostrar en una única tabla el campo City como “Ciudad” y el campo Country como País de los registros de la tabla Customers y Suppliers cuyo país sea Alemania ordenados alfabéticamente por nombre de ciudad de manera ascendente SELECT City AS 'Ciudad', Country AS 'Pais' FROM [Customers] WHERE country = 'Germany' UNION ALL SELECT City AS 'Ciudad', Country AS 'Pais' FROM Suppliers WHERE country = 'Germany' ORDER BY 1 ASC; 3 25. Mostrar los campos ProductName, Price y CategoryID de la tabla Products cuyo CategoryID sea uno de los correspondientes: Beverages o Condiments SELECT ProductName, Price, CategoryID FROM [Products] WHERE CategoryID IN ( SELECT CategoryID FROM Categories WHERE CategoryName = 'Beverages' OR CategoryName = 'Condiments'); 26. Mostrar todos los registros en minúscula del campo ContactName de la tabla Customers SELECT LOWER(ContactName) FROM [Customers]; 27. Mostrar el campo ContactName y otro campo que muestre el número de caracteres que tiene el campo ContactName de la tabla Customers SELECT ContactName, LENGTH(ContactName) FROM [Customers] 28. Mostrar los campos ProductName, Price y Precio con IVA llamado “Precio con IVA” de la tabla Products SELECT ProductName, Price, Price * 1.21 AS 'Precio con IVA' FROM [Products]; 29. Mostrar cuántos registros tiene la tabla Products SELECT COUNT(*) FROM [Products]; 30. Mostrar cuántos productos tienen un precio superior a 20 SELECT COUNT(*) Productos FROM [Products] WHERE Price > 20; SELECT COUNT(Price) FROM [Products] WHERE Price > 20; 31. Mostrar el campo “El más barato” que contenga el precio del producto más barato de la tabla Products SELECT MIN(Price) AS 'El mas barato' FROM [Products]; 32. Mostrar todos los campos del producto con el precio más caro de la tabla Products SELECT * FROM [Products] WHERE Price IN (SELECT MAX(Price) FROM Products); 33. Mostrar un campo con el precio del producto más barato y otro campo con el precio del producto mas caro de la tabla Products poniendo un alias a cada campo SELECT MIN(Price) AS 'Precio más barato', MAX(Price) AS 'Precio más caro' FROM [Products]; 34. Mostrar un campo con el total de las ventas de la tabla OrderDetails SELECT SUM (Quantity) FROM [OrderDetails]; 35. Mostrar la cantidad total de productos vendidos cuyo ProductID es 11, de la tabla OrderDetails SELECT SUM (Quantity) FROM [OrderDetails] WHERE ProductID = 11; 4 36. Mostrar la cantidad de productos vendidos en la tabla OrderDetails con el IVA incluido SELECT SUM (Quantity * 1.21) FROM [OrderDetails]; 37. Mostrar el precio medio de todos los productos de la tabla Products SELECT AVG (Price) FROM [Products]; 38. Mostrar el precio medio de todos los productos de la tabla Products cuyo CategoryName sea Beverages, Dairy Products o Seafood SELECT AVG(Price) FROM [Products] WHERE CategoryID IN (SELECT CategoryID FROM Categories WHERE CategoryName IN ('Beverages', 'Dairy Products', 'Seafood')); 39. Mostrar todos los campos de la tabla Products de los productos cuyo precio sea superior a la media SELECT * FROM [Products] WHERE Price > (SELECT AVG(Price) FROM Products); 40. Mostrar cuántos clientes hay por cada país en la tabla Customers SELECT COUNT(CustomerID) AS 'Numero de clientes', Country FROM [Customers] GROUP BY Country; 41. Mostrar el número de países de la tabla Customers ordenados de menor a mayor SELECT Country, COUNT(Country) TOTAL FROM Customers GROUP BY Country ORDER BY Total ; 42. Mostrar el número de países de la tabla Customers ordenados de menor a mayor, pero solo los que aparezcan más de 5 veces SELECT Country, COUNT(Country) TOTAL FROM Customers GROUP BY Country HAVING COUNT (Country) >=5 ORDER BY Total ; 43. Mostrar los campos OrderID y OrderDate de la tabla Orders y el campo CustomerName relacionado con esa CustomerID de la tabla Customers SELECT OrderId, OrderDate, CustomerName FROM [Orders], [Customers] WHERE Orders.CustomerID = Customers.CustomerID; SELECT OrderID, OrderDAte, CustomerName FROM Orders NATURAL JOIN Customers; 44. Mostrar los campos OrderID y OrderDate de la tabla Orders y los campos CustomerName y Country de la tabla Customers cuyo país sea Brasil SELECT OrderID, OrderDAte, CustomerName, Country FROM Orders NATURAL JOIN Customers WHERE Country = 'Brazil'; SELECT OrderID, CustomerName, Country FROM Orders, Customers WHERE Orders.CustomerID = Customers.CustomerID AND Country = 'Brazil'; 5 45. Crea la tabla Personas con los campos: ID_Persona Apellido Nombre Dirección Ciudad CREATE Table Personas (ID_Persona INT, Apellido VARCHAR(25), Nombre VARCHAR(25), Direccion VARCHAR (30), Ciudad VARCHAR (20)); 46. Copiar los campos CustomerName y ContactName de la tabla Customers en la tabla CopiaCustomers CREATE TABLE copiaCustomers AS SELECT ContactName, CustomerName FROM Customers 47. Insertar en la tabla Customers los datos CustomerName: Antonio City: Madrid Country: Spain INSERT INTO Customers( CustomerName,City, Country) VALUES ('Antonio', 'Madrid', 'Spain') 48. Insertar en la tabla Customers los datos CustomerName: Antonio ContactName: Antonio García Address: C/ Flores, 21 City: Madrid PostalCode: 28905 Country: Spain CustomerName: Antonio ContactName: Manuel Fernández Address: C/ Cielo, 27 City: Madrid PostalCode: 28902 Country: Spain 6 INSERT INTO Customers( CustomerName, ContactName, Address, City, PostalCode, Country) VALUES ('Antonio', 'Antonio García', 'C/ Flores, 21', 'Madrid', '28905', 'Spain'), ('Manuel', 'Manuel Fernánez', 'Cielo , 27', 'Madrid', '28902', 'Spain'); 49. Cambiar en la tabla Customers el nombre de contacto Manuel Fernández por José Pérez y la ciudad por Getafe UPDATE Customers SET ContactName = "Jose Perez", City= "Getafe" WHERE CustomerID= 94; 50. Cambiar en la tabla Customers el nombre de contacto de todos los registros de Mexico por ‘Juan’ 51. Borrar los registros de la tabla Customers cuyo CustomerName sea Alfreds Futterkiste DELETE FROM Customers WHERE CustomerName = "Alfreds Futterkiste"; 52. Borrar todos los registros de la tabla Customers DROP TABLE Customers; 7