MySQL - Ayudita con update

   
Vista:

Ayudita con update

Publicado por Daniel (8 intervenciones) el 03/08/2015 19:05:46
Hola hago updates de estos de vez en cuando y nunca he tenido el mas minimo problema, pero no se que pasa con este que me da resultado=0 row(s) affected Rows matched: 1 Changed: 0 Warnings: 0,
¿alguien ve algun error? gracias.



1
2
3
4
update historial_stock h,
(select round(sum(PrecioMayorista * cInventarioPropio/100), 2)as valor, sum(cInventarioPropio)as num
from productos where PrecioMayorista > 0 and cInventarioPropio > 0 and Accesorio=1 and padre= 0) dest
set h.valor_acce=dest.valor and h.num_acce=dest.num where h.fecha= curdate();
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Ayudita con update

Publicado por xve (898 intervenciones) el 04/08/2015 10:36:55
Hola Daniel, la verdad es que no entiendo tu consulta SQL... para seleccionar una tabla utilizas una consulta SELECT?

Exactamente que quieres hacer? o que tablas quieres actualizar?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-2
Comentar

Ayudita con update

Publicado por Rafael (55 intervenciones) el 04/08/2015 12:28:32
Creo que lo podria estar sucediendo es :

1. Que los campos que sumas, no te devolvieran valores por que no encontrara coincidencias en los criteros :
PrecioMayorista > 0 and cInventarioPropio > 0 and Accesorio=1 and padre= 0

2. que no encuentre registros para la fecha (por que te este tomando horas minutos y segundos)

Como sea creo que mas bien la primer opcion es la clave.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Ayudita con update

Publicado por Daniel (8 intervenciones) el 04/08/2015 17:00:16
Buenas, he vuelto ha hacer la consulta desde 0 y ya me funciona perfectamente no estoy seguro de cual era el problema, gracias por vuestras respuestas lo dejo por si acaso le sirve a alguien, es un update a partir de un select, para los que no lo sepan, que habia alguien que no se habia enterado.

1
2
3
4
update historial_stock prod,
(select round(sum(PrecioMayorista * cInventarioPropio/100), 2)as valor_acce, sum(cInventarioPropio)as num_acce
from productos where PrecioMayorista > 0 and cInventarioPropio > 0 and Accesorio=1 and padre= 0) dest
set prod.valor_acce=dest.valor_acce, prod.num_acce=dest.num_acce where prod.fecha= curdate();
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar