我的innodb表的 struct 如下:4列(CountryID, Year, %Change, Source),2列(CountryID, Year)作为主键.除了使用for循环删除每一行之外,如何删除多行?

我在找类似的东西

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

推荐答案

在甲骨文中,答案是:

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

这是相当标准的SQL语法,我认为MySQL也是一样的.

Mysql相关问答推荐

MySQL连接序列

如何在使用VALUES()插入时指定jOOQ中的行别名

MySQL::JSON列的添加使SELECT查询非性能(当需要临时表时)

在MySQL CLI中,是否有自动完成过程的方法?

亚马逊RDS MySQL-无法';t执行';使用读取锁定刷新表';

无法确定查询逻辑

获取最大登录应用程序用户数以及何时

SQL:如何 Select 每个客户最后购买的产品?

Group_CONCAT CASE 乘法输出

对匹配两个或多个表的表结果进行排序

仅计算 DATEDIFF (MySQL) 中的工作日

如何创建将行转换为列的 MySQL 查询?

由于长时间操作而断开连接后,我的 sql 查询是否继续执行?

Select 多列但仅按 1 列分组

即使我的约束是正确的,如何解决 errno: 150 外键约束形成错误?

不是唯一的表/别名

如何在mysql中连接整数(整数和整数)和varchar(nvarchar和varchar)等数据类型?

NodeJS/mySQL - ER_ACCESS_DENIED_ERROR 用户'root'@'localhost'的访问被拒绝(使用密码:是)

MySQL中的行值增加和减少1

使用 MySql,我可以对列进行排序但最后有 0 吗?