Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/05/2012, 05:20
chocofrodo
 
Fecha de Ingreso: abril-2010
Mensajes: 13
Antigüedad: 14 años
Puntos: 0
Pregunta Update Múltiple con Primary key Múltiple

Hola a todos,

estoy trabajando con MySQL y quiero realizar un update múltiple con una primary key múltiple. Me explico, para hacer un update que afecte a múltiples líneas "de un tiro", actualizando sólo las que queremos, se puede hacer algo como esto:

Código:
UPDATE `my_table` SET `name` = CASE
            WHEN `title` = 'My title' THEN 'My Name 2'
            WHEN `title` = 'Another title' THEN 'Another Name 2'
            ELSE `name` END,
            `date` = CASE
            WHEN `title` = 'My title' THEN 'My date 2'
            WHEN `title` = 'Another title' THEN 'Another date 2'
            ELSE `date` END
            WHERE `title` IN ('My title','Another title')
Esto actualizará los valores 'name' y 'date' de las filas cuya key 'title' tenga los valores 'My title' y 'Another title'.

Claro, si la key es con un sólo campo ( en este caso 'title') es muy simple, ¿pero a alguien se le ocurre como hacerlo para keys múltiples?, es decir, que en vez de ser 'title' IN ('My title', 'Another title') sea algo como ('title' AND 'date') IN (pares de valores).

Gracias por vuestro tiempo, un saludo