Bonjour,
J'ai une table "deputes" qui renferme tout pour le moment et des doublons... Ca marche mais ce n'est pas bon comme conception.
Pour le moment voici sa structure :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
CREATE TABLE IF NOT EXISTS `deputes` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `noms` varchar(255) NOT NULL,
  `legislature` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB;
Pour le moment elle est liée à la table "legislatures" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
CREATE TABLE IF NOT EXISTS `lagislatures` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `annee_debut` date NOT NULL,
  `annee_fin` date NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB;
Cette requête me permet de lister tous les députés, le nombre de législatures et la liste des législatures effectuées par chacun :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
SELECT noms, COUNT(lagislature) AS nbre_legislatures, 
       GROUP_CONCAT(CAST(lagislature AS CHAR) ORDER BY lagislature SEPARATOR ", " ) AS liste 
			 FROM deputes 
			 GROUP BY noms 
			 ORDER BY nbre_legislatures DESC
Pour le moment tout est okay, mais on retrouve des noms de députés qui reviennent toujours en fonction du nombre de législatures effectuées.

Maintenant je souhaite faire une vraie bdd. Et pour le cas, cela me revient à 3 tables.

1. table deputes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
CREATE TABLE `assnat`.`deputes` (
`id_depute` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`noms` VARCHAR( 255 ) NOT NULL
) ENGINE = InnoDB;
2. table legislatures
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
CREATE TABLE `assnat`.`legislatures` (
`id_legis` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`date_debut` DATE NOT NULL ,
`date_fin` DATE NOT NULL
) ENGINE = InnoDB;
3. table depute_legislatures
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
CREATE TABLE `assnat`.`depute_legislatures` (
`id_depute` INT NOT NULL ,
`id_legis` INT NOT NULL
) ENGINE = InnoDB;
Je souhaite donc savoir comment remplir dynamiquement à partir d'une requête sur la table initial les tables deputes et depute_legislatures de la seconde structure.

NB. Volontairement j'ai laissé de coté les contraintes pour ne pas saturer la problématique.

Merci d'avance...