Cita:
Iniciado por DooBie
buenas compañeros, tengo una duda, es posible hacer un update de una misma tabla, pero que haga "dos cosas diferentes"?
me explico mejor con un ejemplo:
tengo la tabla 'categorias' y quiero poner el campo 'especial' a 0 en todas las categorias menos en una, pero en esa que dejo sin cambiarlo, debo ponerlo a 1
es muy facil hacerlo con dos updates:
UPDATE categorias SET especial=0;
UPDATE categorias SET especial=1 WHERE id=2;
pero, se podria hacer en una sola consulta?
es simple curiosidad solamente :p
gracias!
con esto:
UPDATE categorias SET especial = IF (id=2, 1,0)
Para dos soluciones distintas puedes usar IF; para más tendrás que usar CASE... Por ejemplo,
UPDATE categorias SET especial = CASE id WHEN 2 THEN 1 WHEN 1 THEN 5 ELSE 8 END