Deletando Linhas de Tabelas Relacionadas
Como o MariaDB não suporta subconsultas (antes da versão 4.1), enm o uso de mais de uma tabela na instruçao DELETE (antes da versão 4.0), você deve usar a seguinte abordagem para deletar linhas de 2 tabelas relacionadas:
SELECTas linhas baseado em alguma condiçãoWHEREna tabela principal.DELETEas linhas da tabela princiapl basada nas mesmas condições.DELETE FROM tabela_relacionada WHERE coluna_relacionada IN (linhas_selecionadas).
Se o número total de caracteres na consulta com colunas_relacionadas é maior que 1,048,576 (o valor padrão de max_allowed_packet, você deve separá-lo em duas partes menores e executar múltiplas instruções DELETE. Você provavelmente obterá o DELETE mais rápido apenas delatando 100-1000 ids de colunas_relacionadas por consulta se colunas_relacionadas é um índice. Se colunas_relacionadas não é um índice, a velocidadi é independente do número de argumentos na cláusula IN.