Bonjour,

J'ai trois tables :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
CREATE TABLE IF NOT EXISTS `praticiens` (
  `Id` int(11) NOT NULL AUTO_INCREMENT,
  `pseudo` varchar(50) NOT NULL,
  `password` varchar(50) NOT NULL,
  `email` varchar(50) NOT NULL,
  `titre` smallint(6) NOT NULL DEFAULT '0',
  `prenom` varchar(75) NOT NULL,
  `nom` varchar(75) NOT NULL,
  `birth_date` date NOT NULL,
  `store_date` datetime NOT NULL,
  `IP_ad` varchar(15) DEFAULT NULL,
  `visible` int(11) NOT NULL DEFAULT '0',
  `email_vis` tinyint(1) NOT NULL DEFAULT '1',
  `level` int(11) NOT NULL DEFAULT '1',
  PRIMARY KEY (`Id`),
  UNIQUE KEY `email` (`email`),
  UNIQUE KEY `pseudo` (`pseudo`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;
 
CREATE TABLE IF NOT EXISTS `praticiens_courses` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `id_praticien` int(11) NOT NULL,
  `id_course` int(11) NOT NULL,
  `id_organisme` int(11) NOT NULL,
  `year_course` year(4) NOT NULL,
  `course_valid` tinyint(1) NOT NULL DEFAULT '0',
  `filename` varchar(255) DEFAULT NULL,
  `file_Id` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `id_praticien` (`id_praticien`,`id_course`,`year_course`),
  KEY `date_user` (`id_praticien`,`year_course`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;
 
CREATE TABLE IF NOT EXISTS `courses_label` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `label` varchar(255) NOT NULL,
  `id_organisme` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
Que je veux relier avec une requête qui devrait ressembler à quelque chose comme :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT praticiens.prenom, praticiens.nom, praticiens_courses.id, praticiens_courses.year_course, praticiens_courses.file_Id, courses_label.label
FROM praticiens
JOIN praticiens_courses ON praticiens.Id = praticiens_courses.id_praticien
JOIN courses_label ON praticiens_courses.id_course = courses_label.id
WHERE praticiens_courses.course_valid =0
ORDER BY praticiens.nom, praticiens.prenom
Cette requête fonctionne mais est-il possible de sortir aussi les enregistrements de la table praticiens qui n'ont pas d'enregistrements dans praticiens_courses ?