Je dois 3 tables:sorte MySQL de l'union
CREATE TABLE IF NOT EXISTS `Articles` (
`id` int(11) NOT NULL DEFAULT '',
...
...
PRIMARY KEY (`id_article`)
) ENGINE=InnoDB ;
Persons_Articles:
CREATE TABLE IF NOT EXISTS `Persons_Articles` (
`id_article` int(11) NOT NULL,
`id_person` int(11) UNSIGNED NOT NULL,
`role` TINYINT(4) UNSIGNED,
PRIMARY KEY (`id_article`,`id_person`,`role`)
) ENGINE=InnoDB ;
Personnes:
CREATE TABLE IF NOT EXISTS `Persons` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`firstname` varchar(64) DEFAULT NULL,
`lastname` varchar(64) NOT NULL,
`fullname` varchar(128) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB ;
INSERT INTO Articles VALUES (1, 'A'), (2, 'B'), (3, 'B');
INSERT INTO Persons_Articles VALUES (1, 1, 1);
INSERT INTO Persons_Articles VALUES (1, 2, 2);
INSERT INTO Persons VALUES (1, 'Mick', 'Jagger', 'Mick Jagger');
INSERT INTO Persons VALUES (2, 'Keith', 'Richards', 'Keith Richards');
Je cherche une requête qui peut renvoyer l'article avec (fullname = 'Mick Jagger' ET rôle = 1) AND (nom complet = 'Keith Richards' ET rôle = 2)
Des idées?
@Torrezzzz, votre commentaire suggère une réponse incorrecte. –