Advertisement
GastonPalazzo

insert into select

Nov 16th, 2020
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 2.17 KB | None | 0 0
  1. -- INSERT INTO SELECT
  2. -- 1
  3. CREATE TABLE libros(
  4. codigo INT(50) NOT NULL,
  5. titulo VARCHAR(50) NOT NULL,
  6. autor VARCHAR(50) NOT NULL,
  7. editorial VARCHAR(50) NOT NULL,
  8. precio FLOAT(50) NOT NULL,
  9. PRIMARY KEY (codigo)
  10. );
  11. --
  12. CREATE TABLE editoriales(
  13. nombre VARCHAR(50)
  14. );
  15. -- 2
  16. INSERT INTO libros(codigo, titulo, autor, editorial, precio)
  17. VALUE (1,'El aleph','Borges','Emece',23.5),
  18.         (2,'Alicia en el pais de las maravillas','Lewis Carroll','Planeta',15),
  19.         (3,'Matematica estas ahi','Paenza','Emece',34.6),
  20.         (4,'Martin Fierro','Jose Hernandez','Paidos',43.5),
  21.         (5,'Martin Fierro','Jose Hernandez','Planeta',12),
  22.         (6,'Aprenda PHP','Mario Molina','Paidos',21.8),
  23.         (7,'Aprenda Java','Mario Molina','Paidos',55.4),
  24.         (8,'Alicia a traves del espejo','Lewis Carroll','Emece',18),
  25.         (9,'Antologia poetica','Borges','Paidos',47.9);
  26. -- 3
  27. INSERT INTO editoriales(nombre)
  28. SELECT DISTINCT editorial FROM libros;
  29. -- 4
  30. CREATE TABLE cantidad_editorial(
  31. nombre VARCHAR(50),
  32. cantidad INT(50)
  33. );
  34. -- 5
  35. INSERT INTO cantidad_editorial(nombre, cantidad)
  36. SELECT DISTINCT editorial, COUNT(codigo) AS 'cantidad_de_libros'
  37. FROM libros
  38. GROUP BY editorial;
  39. -- Segunda Ejercitacion
  40. -- 1
  41. CREATE TABLE facturas(
  42. numero INT(50) NOT NULL AUTO_INCREMENT,
  43. numeroitem SMALLINT(50) NOT NULL,
  44. descripcion VARCHAR(50) NOT NULL,
  45. precioporunidad FLOAT(50) NOT NULL,
  46. cantidad INT(50) NOT NULL,
  47. primary key(numero, numeroitem)
  48. );
  49. -- 2
  50. INSERT INTO facturas(numero, numeroitem, descripcion, precioporunidad, cantidad)
  51. VALUES (100,1,'escuadra 20 cm.',2.50,20),
  52.          (100,2,'escuadra 50 cm.',5,30),
  53.          (100,3,'goma lapiz-tinta',0.35,100),
  54.          (102,1,'lapices coloresx6',4.40,50),
  55.          (102,2,'lapices coloresx12',8,60),
  56.          (255,1,'lapices coloresx24',12.35,100),
  57.          (567,1,'compas plastico',12,50),
  58.          (567,2,'compas metal',18.90,80);
  59. -- 3
  60. CREATE TABLE monto_facturas(
  61. num_de_factura INT(50) NOT NULL,
  62. monto_total FLOAT(50) NOT NULL
  63. );
  64. -- 4
  65. SELECT numero, SUM(ROUND(precioporunidad*cantidad)) AS 'precio_total_por_item'
  66. FROM facturas
  67. GROUP BY numero;
  68. -- 5
  69. INSERT INTO monto_facturas (
  70. SELECT numero, SUM(ROUND(precioporunidad*cantidad)) AS 'precio_total_por_item'
  71. FROM facturas
  72. GROUP BY numero
  73. );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement