Salut à tous

J'ai un souci pour extraire des informations d'une table en fonction d'une date.

Schéma de la table :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
CREATE TABLE table_1
(champs_1 INTEGER,
 champs_2 INTEGER,
 champs_3 DATE,
 CONSTRAINT PK_Table_1 PRIMARY KEY (champs_1, champs_2))
 
INSERT INTO Table_1 (champs_1, champs_2, champs_3) VALUES (27, 123456, '12/04/2013') 
INSERT INTO Table_1 (champs_1, champs_2, champs_3) VALUES (27, 123456, '14/04/2013') 
INSERT INTO Table_1 (champs_1, champs_2, champs_3) VALUES (27, 123456, '19/05/2013')
Voici la requête actuelle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT champs_1, champs_2, champs_3
FROM Table_1
WHERE champs_1 IS NOT NULL AND champs_2 IS NOT NULL
GROUP BY champs_1, champs_2, champs_3
Résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
champs_1	champs_2	champs_3
--------	--------	--------
27			123456		12/04/2013
27			123456		14/04/2013
27			123456		19/05/2013
Jusque là, tout est normal. Je peux avoir plusieurs dates (champs_3) pour un même couple de (champs_1,champs_2).

Sauf que je souhaiterais faire la même liste mais en ayant qu'une seule ligne en prenant la dernière date.

Donc n'avoir que cette ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
champs_1	champs_2	champs_3
--------	--------	--------
27			123456		19/05/2013
Et là, je sais plus comment faire

J'y arrive si je conditionne sur champs_1 et champs_2 par :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
SELECT champs_1, champs_2, champs_3
FROM Table_1
WHERE champs_1 = 27 AND champs_2 = 123456
AND champs_3 = (SELECT MAX(champs_3) FROM Table_1 WHERE champs_1 = 27 AND champs_2 = 123456)
GROUP BY champs_1, champs_2, champs_3
J'obtiens bien la ligne que je souhaite, mais je vois pas comment je peux faire pour l'appliquer sans conditions.

Merci pour votre lecture.