Bonjour

Je me pose une question. Est ce possible de limiter la sortie d un table dans une jointure? Pour ce faire, j ai créer 2 table et une requete.

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
CREATE TABLE `cat_news` (
  `CAT_ID` int(11) NOT NULL auto_increment,
  `CAT_TITRE` varchar(30) NOT NULL default '',
  KEY `CAT_ID` (`CAT_ID`)
) ;
 
INSERT INTO `cat_news` VALUES (1, 'catégorie 1');
INSERT INTO `cat_news` VALUES (2, 'catégorie 2');
INSERT INTO `cat_news` VALUES (3, 'catégorie 3');
 
 
CREATE TABLE `news` (
  `NEWS_ID` int(11) NOT NULL auto_increment,
  `NEWS_CAT_ID` int(11) NOT NULL default '0',
  `NEWS_TITRE` varchar(20) NOT NULL default '',
  `NEWS_CONTENT` text NOT NULL,
  KEY `NEWS_ID` (`NEWS_ID`)
);
 
INSERT INTO `news` VALUES (1, 1, 'titre 1', 'contenu 1');
INSERT INTO `news` VALUES (2, 2, 'titre 2', 'contenu 2');
INSERT INTO `news` VALUES (3, 2, 'titre 3', 'contenu 3');
INSERT INTO `news` VALUES (4, 3, 'titre 4', 'contenu 4');
INSERT INTO `news` VALUES (5, 1, 'titre 5', 'contenu 5');
INSERT INTO `news` VALUES (6, 2, 'titre 6', 'contenu 6');
 
 
SELECT CN.CAT_ID, CN.CAT_TITRE,
              N.NEWS_ID, N.NEWS_CAT_ID, N.NEWS_TITRE, N.NEWS_CONTENT
              FROM cat_news AS CN
                     LEFT JOIN news AS N ON CN.CAT_ID = N.NEWS_CAT_ID
                           ORDER BY CN.CAT_ID ASC, N.NEWS_ID ASC
Je veux lister toutes les catégories mais avec une news. J avais deja eu ce probleme pour la création d un forum. J ai donc créer des champs Last_topic_id ....

Avez vous une solution ? Est ce possible ?

Merci, Jerome