Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL na atualização de chave duplicada + contagem de linhas afetadas


Acho que é impossível sem mais informações - não basta apenas a contagem de linhas que você está prestes a inserir e as linhas afetadas.

mysqli->info retorna uma string útil que também fornece uma contagem duplicada - podemos descobrir o resto a partir disso.
list($rec, $dupes, $warns) = sscanf($mysqli->info, "Records: %d Duplicates: %d Warnings: %d"); // courtesy of user at big lake dot com - php.net
$inserts = $total_rows_affected - ($dupes * 2);
$updates = ($total_rows_affected - $inserts)/2;     
$skipped = $rec - ($inserts + $updates);     
$total = $rec;