Ver Mensaje Individual
  #5 (permalink)  
Antiguo 24/05/2012, 09:42
Paranco
 
Fecha de Ingreso: mayo-2012
Mensajes: 2
Antigüedad: 12 años
Puntos: 0
Respuesta: Modificar valor de campo según campo calculado

Cita:
Iniciado por falegria230349 Ver Mensaje
Hola Paranco, prueba asi:

UPDATE MiTabla SET Campo1 = IF(campo2/campo3>=5,1,0);

Saludos.
Probaré así y te cuento, gracias.

Cita:
Iniciado por jurena Ver Mensaje
Primero una pregunta ¿para qué almacenar un campo calculado? Imagina que cambias un vaalor de los otros campos. Cada vez que lo hagas tendrás que lo hagas tendrás que actualizar el valor.

El campo calculado no lo quiero almacenar. Lo único que quiero es hacer una consulta manual y poder cambiar cada vez que la ejecute, el valor del campo 1 dependiendo del resultado de la división del campo 2 y del campo 3...

Cita:
Iniciado por jurena Ver Mensaje
Acláranos qué haces luego con el valor de ese valor del campo1.
y para acabar, otra cuestión: ¿Y qué pasa si el valor de la división no se corresponde con los dos que esperas...?
El valor del campo 1 restringe permisos de acceso a una sección de una página web... Los usuarios, si tiene 1 pueden acceder, si tienen 0 no pueden... Entonces, lo que quiero hacer es que según lo que me resulte de la división del campo 2 y el campo 3, cambiar ese valor a 1 ó a 0 y quitar o dar permiso de acceso.

Lo hacía manualmente, pero dejó de ser práctico cuando llegué a más de 25,000 registros


Cita:
Iniciado por quimfv Ver Mensaje
Yo diria mas... para que quieres el campo1 si puedes hacer

SELECT * FROM tutabla WHERE campo2/campo3<5;

y te dará los registros que deberian tener 1 en el campo1 y

SELECT * FROM tutabla WHERE campo2/campo3>3;

los otros....

Ojo que con estas restriciones tienes registros coincidentes en las dos consultas.... en este caso no podrias solucionarlo con el campo1....

Lo registros que deberían tener ya sea 1 o 2 en el CAMPO 1 los veo haciendo esta consulta:

SELECT campo 2, campo 3, campo 2/campo 3
FROM Mi tabla

Y de salida obtengo el campo calculado sin almacenarlo....

Pero luego no sé como cambiar el valor del Campo 1 de los registros que me arrojen en el campo calculado más de 3 a 1 y los que me arrojen menos de 3, a 0 :(

Última edición por Paranco; 24/05/2012 a las 09:56