tabla simples primarias primaria llaves llave foranea compuestas compuesta clave agregar mysql sql-delete composite-primary-key multiple-records

mysql - foranea - llaves primarias simples y compuestas



¿Cómo eliminar varias filas con 2 columnas como clave principal compuesta en MySQL? (1)

Mi tabla innodb tiene la siguiente estructura: 4 columnas (CountryID, Year, %Change, Source) , con las 2 columnas (CountryID, Year) como clave principal. ¿Cómo elimino varias filas además de usar un for-loop para eliminar cada fila?

Estoy buscando algo similar a

DELETE FROM CPI WHERE CountryID AND Year IN ((''AD'', 2010), (''AF'', 2009), (''AG'', 1992))

Encontré la respuesta después de más retoques:

DELETE FROM CPI WHERE (CountryID, Year) IN ((''AD'', 2010), (''AF'', 2009), (''AG'', 1992))

Espero que esto ayude a alguien por ahí en la misma salmuera.


La respuesta en Oracle es:

delete from cpi where (countryid, year) in ((''AD'', 2010), (''AF'', 2009), (''AG'', 1992))

Es una sintaxis SQL bastante estándar y creo que MySQL es la misma.