Bonjour,

Je tente de convertir des requêtes Access en procédures stockées SQL Server, et je rencontre un petit souci avec la fonction Access "format".
Elle n'est apparemment pas reconnue par SQL Server et je ne parviens pas à trouver son équivalent.

Voici la procédure stockée SQL Server que je tente de faire passer :

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
 
 
CREATE PROCEDURE dbo.etatComptProd_horseuropipe (@date_debut VARCHAR(10), @date_fin VARCHAR(10))
AS
 
BEGIN
 
SELECT DISTINCT Month([dateexp]) AS mois, Format([dateexp],"mmmm yyyy") AS libmois, SORTIES.DESTINATAIRE, SORTIES.COMMANDE, SORTIES.POSTE, CHOIX.[CODE CHOIX], CHOIX.[CHOIT TBORD], Sum(SORTIES.TONNAGE) AS SommeDeTONNAGE, Sum(SORTIES.TOLE) AS SommeDeTOLE
 
FROM REGROUPEMENT INNER JOIN (PAYS INNER JOIN (CHOIX INNER JOIN SORTIES ON CHOIX.[CODE CHOIX] = SORTIES.CHOIX) ON PAYS.[CODE PAYS] = SORTIES.[CODE PAYS]) ON REGROUPEMENT.[CODE REGROUPEMENT] = PAYS.REGROUPEMENT
 
WHERE ((SORTIES.DATEEXP) Between @date_debut  And  @date_fin))
GROUP BY Month([dateexp]), Format([dateexp],"mmmm yyyy"), SORTIES.DESTINATAIRE, SORTIES.COMMANDE, SORTIES.POSTE, CHOIX.[CODE CHOIX], CHOIX.[CHOIT TBORD]
 
HAVING CHOIX.[CODE CHOIX]=2
 
ORDER BY Format([dateexp],"mmmm yyyy");
 
END
 
GO
Les lignes me posant problème sont donc celles contenant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Format([dateexp],"mmmm yyyy")
N'étant pas l'auteur de la requête ACCESS, je ne suis tout d'abord par certain d'avoir compris l'utilité de la fonction.

- Le principe est-il bien de partir d'une date de type "01/01/2006" et d'obtenir "Janvier 2006" ?

- Dans ce cas, par quelle fonction puis-je la remplacer pour pouvoir l'utiliser en SQL Server ?

Je vous remercie par avance,
Alex