Déjà juste une question, pourquoi une seelie n'a pas de champ flight (avec éventuellement un champ has_flight) ce qui te force à faire une jointure de plus ?
ha je me rends compte que tu veux une mise à jour, pas de problème. je pars du principe que tu crées le champ de la table flight_has territory avant, hein, par exemple quand une Seelies se déplace.
Code :
SELECT flight_id, territory_id, SUM(SELECT importance FROM Seelies JOIN Flight_has_seelies AS FHS ON Seelie.seelie_id=FAS.seelie_id WHERE FHS.flight_id=flights.flight_id AND Seelies.territory_id=territories.territory_id) AS Possession FROM flights, Territories
ha je me rends compte que tu veux une mise à jour, pas de problème. je pars du principe que tu crées le champ de la table flight_has territory avant, hein, par exemple quand une Seelies se déplace.
Code :
UPDATE flight_has_territory as FHT SET possession = SUM(SELECT importance FROM Seelies JOIN Flight_has_seelies AS FHS ON Seelie.seelie_id=FHS.seelie_id WHERE FHS.flight_id=FHT.flight_id AND Seelies.territory_id=FHT.territory_id)