where in et version mysql
Posté : 31 janv. 2008, 05:16
Bonjour à tous,
J'ai créé la requete suivante(subselect) qui marche très bien a partir de mysql 4.1.
Quelqu'un saurait-il comment traduire ce subselect en jointure?
Merci bcp pour un petit coup de pouce.
Mes tables
J'ai créé la requete suivante(subselect) qui marche très bien a partir de mysql 4.1.
SELECT * FROM add_enseignants WHERE idens IN (SELECT id_ens FROM add_map_matieres_enseignants WHERE id_mat = $row->id)
Pb: je viens de découvrir que mon client est sur mysql 4.0 chez son hébergeur. Je voulais mettre le site en ligne la nuit car bcp de connexions la journée. il est 4h du mat et je galère à cause d'un subselect que je dois transformer en jointure.Quelqu'un saurait-il comment traduire ce subselect en jointure?
Merci bcp pour un petit coup de pouce.
Mes tables
Code : Tout sélectionner
CREATE TABLE `add_enseignants` (
`idens` int(10) NOT NULL auto_increment,
`genreens` varchar(5) character set latin1 NOT NULL default '',
`nomens` varchar(100) character set latin1 NOT NULL default '',
`prenomens` varchar(255) character set latin1 collate latin1_general_ci NOT NULL default '',
`fonctionens` varchar(255) character set latin1 NOT NULL default '',
`parcoursens` text character set latin1 NOT NULL,
`emailens` varchar(255) character set latin1 collate latin1_general_ci NOT NULL default '',
`cvens` varchar(255) character set latin1 collate latin1_general_ci NOT NULL default '',
`photoens` varchar(255) character set latin1 collate latin1_general_ci NOT NULL default '',
`publishedens` tinyint(1) NOT NULL default '0',
PRIMARY KEY (`idens`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=46 ;
CREATE TABLE `add_map_matieres_enseignants` (
`id` int(10) NOT NULL auto_increment,
`id_mat` int(10) NOT NULL default '0',
`id_ens` int(10) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=64 ;