Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/06/2008, 23:29
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: disculpen me pueden auxiliar es urgente..

Una cosa es mostrar un dato, una consulta de selección (que puede incluir operación), y otra distinta guardar un dato en una casilla mediante una consulta de actualización.
Para mostrar
SELECT p.num_ped,c.nombre,p.fecha_ped,pr.desc_prod,it.can _ped,it.can_fac, it.can_ped - it.can_fac AS cantidadperdida
FROM cliente c,pedido p,item_pedido it,producto pr
WHERE c.id_cli=p.id_clie
AND p.num_ped=it.num_pedi
AND it.ref_pro=pr.ref_prod

para actualizar (si es que lo consideras necesario)
UPDATE nombredelatabla SET cantidad_perdida = it.can_ped - it.can_fac WHERE ... (condiciones)

Debes tener claro que puedes mostrar el resultado cuando tengas guardados los dos campos que vas a restar mediante esa operación, y que no necesitas más. Es lo mejor no guardar el dato que puedas generar siempre operando sobre los otros datos, pues algunos de los datos (los operadores de la resta en este caso) podría cambiarse y entonces, si muestras el campo cantidad_perdida que dices vas a tener, el dato guardado será ya erróneo. Los técnicos nos aconsejan en general no guardar datos en las Bases que puedas generar mediante consulta, como es este caso.