Es posible obtener salidas en las cuales una columna sea el resultado de un cálculo y no un campo de una tabla.
Si queremos ver los títulos, precio y cantidad de cada libro escribimos la siguiente sentencia:
select titulo,precio,cantidad from libros;
Si queremos saber el monto total en dinero de un título podemos multiplicar el precio por la cantidad por cada título, pero también podemos hacer que MySQL realice el cálculo y lo incluya en una columna extra en la salida:
select titulo, precio,cantidad,precio*cantidad from libros;
Si queremos saber el precio de cada libro con un 10% de descuento podemos incluir en la sentencia los siguientes cálculos:
select titulo, precio,precio*0.1,precio-(precio*0.1) from libros;
Problema Resuelto:
Trabajamos con la tabla "libros" de una librería.
Eliminamos la tabla, si existe:
drop table if exists libros;
Creamos la tabla:
create table libros( codigo int unsigned auto_increment, titulo varchar(40) not null, autor varchar(30), editorial varchar(15), precio decimal(5,2) unsigned, cantidad smallint unsigned, primary key (codigo) );
create table libros( codigo int unsigned auto_increment, titulo varchar(40) not null, autor varchar(30), editorial varchar(15), precio decimal(5,2) unsigned, cantidad smallint unsigned, primary key (codigo) );
Ingresamos algunos registros:
insert into libros (titulo,autor,editorial,precio,cantidad)
values('El aleph','Borges','Planeta',15,100);
insert into libros (titulo,autor,editorial,precio,cantidad)
values('Martin Fierro','Jose Hernandez','Emece',22.20,200);
insert into libros (titulo,autor,editorial,precio,cantidad)
values('Antologia poetica','Borges','Planeta',40,150);
insert into libros (titulo,autor,editorial,precio,cantidad)
values('Aprenda PHP','Mario Molina','Emece',18.20,200);
insert into libros (titulo,autor,editorial,precio,cantidad)
values('Cervantes y el quijote','Borges','Paidos',36.40,100);
insert into libros (titulo,autor,editorial,precio,cantidad)
values('Manual de PHP', 'J.C. Paez', 'Paidos',30.80,100);
insert into libros (titulo,autor,editorial,precio,cantidad)
values('Harry Potter y la piedra filosofal','J.K. Rowling','Paidos',45.00,500);
insert into libros (titulo,autor,editorial,precio,cantidad)
values('Harry Potter y la camara secreta','J.K. Rowling','Paidos',46.00,300);
insert into libros (titulo,autor,editorial,precio,cantidad)
values('Alicia en el pais de las maravillas','Lewis Carroll','Paidos',null,50);
Para obtener el monto total en dinero de un título podemos multiplicar el precio por la cantidad, por cada título, MySQL realiza el cálculo y lo incluye en una columna extra en la salida:
select titulo, precio,cantidad,precio*cantidad from libros;
Para saber el precio de cada libro con un 10% de descuento podemos incluir en la sentencia los siguientes cálculos:
select titulo, precio,precio*0.1,precio-(precio*0.1) from libros;
select titulo, precio,precio*0.1,precio-(precio*0.1) from libros;
Problema Propuesto:
Una empresa almacena los datos de sus empleados en una tabla "empleados". 1- Elimine la tabla "empleados" si existe. 2- Cree una tabla llamada "empleados" con la estructura necesaria
para almacenar la siguiente información:
- nombre del empleado, - documento, - sexo, - domicilio, - sueldo básico (hasta 9999.99), - hijos a cargo, - clave primaria: documento. 3- Ingrese algunos registros:
(nombre,documento,sexo,sueldobasico,hijos) Juan Perez,22333444,m,300,1 Ana Acosta,21333444,f,400,2 Alberto Lopez,24333444,m,600,0 Carlos Sanchez,30333444,m,550,3 Mariana Torres,23444555,f,600,1 Marcos Garcia,23664555,m,1500,2 4- La empresa está pensando en aumentar un 10% el sueldo a los empleados,
y quiere saber a cuánto subiría cada sueldo básico, para ello usamos la
siguiente sentencia en la cual incluimos una columna que hará el cálculo
de cada sueldo más el 10%: 5- La empresa paga un salario familiar por hijos a cargo, $200 por cada hijo.
Necesitamos el nombre del empleado, el sueldo básico, la cantidad de hijos
a cargo, el total del salario familiar y el suedo final (incluyendo el
salario familiar):
Otros problemas:
Un comercio vende artículos de librería y papelería. Almacena en una tabla
los siguientes datos:
- codigo: int unsigned auto_increment, clave primaria, - nombre: varchar(30), - precio: decimal(5,2), - cantidad: smallint unsigned. 1- Elimine la tabla, si existe. 2- Cree la tabla con la estructura necesaria para almacenar
los datos descriptos anteriormente. 3- Ingrese los siguientes registros: (nombre,precio,cantidad) lapices coloresx6,1.4,100 lapices coloresx12,2.5,100 lapices coloresx24,4.7,100 goma tinta,0.2,150 birome,1.2,200 escuadra,3.2,200 compás plástico,5,200 compás metal,8.4,250 4- El precio representa el costo del artículo al comprarlo.
Este comercio vende sus artículos por mayor y por menor, para
la venta minorista incrementa el precio de costo en un 10%,
para la venta mayorista lo incrementa en un 5%. Muestre los
precios de cada artículo y calcule en 2 columnas diferentes el
precio de cada uno de ellos al venderse por mayor y por menor:
5- El gerente de dicho comercio necesita saber cuánto dinero
hay invertido en cada artículo, para ello, necesitamos multiplicar
el precio de cada artículo por la cantidad:
Gracias por todo. Me está resultando muy útil
ResponderEliminarmuchas gracias eres un capo
ResponderEliminarCabrón si te vas a copiar pon la fuente esa información es de la página http://www.tutorialesprogramacionya.com/
ResponderEliminarCabrón si te vas a copiar pon la fuente esa información es de la página http://www.tutorialesprogramacionya.com/
ResponderEliminarnada
ResponderEliminar