如何计算delete + join结构中一个表中已删除行的数量?

时间:2011-01-10 13:58:09

标签: php mysql phpmyadmin

我使用以下查询来删除两个表中的行

delete 
     itc, ic 
from 
     incoming_tours ic 
join 
     incoming_tours_cities itc on itc.id_parrent = ic.id 
where 
     ic.sale = '5'

如何从ic表中获取受影响的行数? (mysql_affected_rows返回总计数,我只需要从一个表中获得)。 (我在我的表中使用MyISAM引擎,这就是为什么我不在这里使用外键)

非常感谢

2 个答案:

答案 0 :(得分:1)

预先计算行数。

select count(*) as sale_rows from ic where ic.sale = '5'

在事务中执行此操作以确保SELECT和DELETE命令之间的表不会更改。

答案 1 :(得分:0)

您无法使用affected_rows。我认为您可以在ic上的删除后触发器中使用会话变量来计算已删除的行。