How to delete multiple rows with 2 columns as composite primary key in MySQL?
-
28-10-2019 - |
Question
My innodb table has the following structure: 4 columns (CountryID, Year, %Change, Source)
, with the 2 columns (CountryID, Year)
as the primary key. How do I delete multiple rows other than using a for-loop to delete each row?
I'm looking for something similar to
DELETE FROM CPI
WHERE CountryID AND Year IN (('AD', 2010), ('AF', 2009), ('AG', 1992))
Solution
The answer in Oracle is:
delete from cpi
where (countryid, year) in (('AD', 2010), ('AF', 2009), ('AG', 1992))
It's fairly standard SQL syntax and I think MySQL is the same.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow