-- Remove cronogramas-filho que ficaram em ptk_project_schedule após a
-- reestruturação (já existem como ptk_project_schedule_item sob o pai).
-- Critério: mesmo projeto + mesmo título de um item de outro schedule,
-- e sem itens próprios (não é pai real).
--
-- Subquery aninhada: MySQL 1093 não permite DELETE na mesma tabela
-- referenciada no FROM sem materializar numa derived table.

DELETE FROM `ptk_project_schedule`
WHERE `id` IN (
  SELECT `id` FROM (
    SELECT s.`id` AS `id`
    FROM `ptk_project_schedule` s
    WHERE EXISTS (
      SELECT 1
      FROM `ptk_project_schedule_item` i
      INNER JOIN `ptk_project_schedule` parent ON parent.`id` = i.`schedule_id`
      WHERE parent.`project_id` = s.`project_id`
        AND parent.`id` <> s.`id`
        AND i.`title` = s.`title`
    )
    AND NOT EXISTS (
      SELECT 1
      FROM `ptk_project_schedule_item` i2
      WHERE i2.`schedule_id` = s.`id`
    )
  ) AS `orphan_ids`
);
