populateV3Publisher+Version+Action.sql 1.86 KB
tee populateV3Publisher+Version+Action.log

SET foreign_key_checks = 0;

INSERT INTO publisher (publisher_id, validated_version_publisher_version_id)
  SELECT
    ID_EDITEUR,
    ID_EDITEUR
  FROM editeur;

INSERT INTO publisher_version (
  publisher_version_id,
  publisher_publisher_id,
  publisher_name,
  publisher_street_address,
  publisher_postal_code,
  publisher_post_office_box_number,
  publisher_address_region,
  publisher_address_locality,
  publisher_address_country_country_id,
  publisher_telephone,
  publisher_email,
  publisherurl,
  publisher_history,
  publisher_version_creator_user_id,
  publisher_version_datetime
)
select ID_EDITEUR, ID_EDITEUR, NOM_EDITEUR, ADR_EDITEUR, CP_EDITEUR, NULL,
  NULL,
  VILLE,
  country_id,
  TEL_EDITEUR,
  EMAIL_EDITEUR,
  URL_EDITEUR,
	HISTORIQUE, ID_UTILISATEUR, DATE_ACTION
from editeur e
  LEFT JOIN country ON country_name = e.PAYS
join roliste.journal j on j.ID_JOURNALISABLE = e.ID_EDITEUR
where j.DATE_ACTION = (select max(DATE_ACTION) from roliste.journal j2
	where j2.ID_JOURNALISABLE = e.ID_EDITEUR)
union
select ID_EDITEUR, ID_EDITEUR, NOM_EDITEUR, ADR_EDITEUR, CP_EDITEUR, NULL,
  NULL,
  VILLE,
  country_id,
  TEL_EDITEUR,
  EMAIL_EDITEUR,
  URL_EDITEUR,
	HISTORIQUE, null, null
from editeur e
  LEFT JOIN country ON country_name = e.PAYS
where ID_EDITEUR not in (select distinct ID_JOURNALISABLE from roliste.journal)
;


INSERT INTO publisher_action (action_type, publisher_action_actor_user_id,
                              publisher_version_publisher_version_id, publisher_action_datetime,
                              publisher_publisher_id)
select 0, ID_UTILISATEUR, ID_EDITEUR, DATE_ACTION, ID_EDITEUR
from editeur e
join roliste.journal j on j.ID_JOURNALISABLE = e.ID_EDITEUR
where j.DATE_ACTION = (select max(DATE_ACTION) from roliste.journal j2
	where j2.ID_JOURNALISABLE = e.ID_EDITEUR)
;

SET foreign_key_checks = 1;