Bonjour,
Je suis en train de travailler sur un site d'offres d'emploi, j'ai quelques questions au sujet des procédures stockées.
J'ai plusieurs paramètres qui peuvent ne pas être renseignés et j'aimerais savoir comment faire ma requète (voici la procédure)
Si je ne renseigne pas certain paramètres, ma requête ne me retournera aucun enregistrement
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 ALTER PROCEDURE [dbo].[GetOffres] ( @RecruteurID int = null, @MetierID int = null, @SecteurID int = null, @NiveauID int = null, @Reference nvarchar = null, @Keyword nvarchar = null ) AS BEGIN SET NOCOUNT ON; SELECT * FROM Offres WHERE RecruteurID = @RecruteurID AND MetierID IN (@MetierID) AND SecteurID IN (@SecteurID) AND NiveauID = @NiveauID AND Reference = @Reference AND Titre LIKE @Keyword END
Serait-ce une bonne idée de faire ceci par exemple :
De plus j'aimerais savoir comment faire pour passer des paramètres tels que @MetierID afin que ma requête s'effectue de cette sorte MetierID IN (@MetierID)
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 ALTER PROCEDURE [dbo].[GetOffres] ( @RecruteurID int = null, @MetierID int = null, @SecteurID int = null, @NiveauID int = null, @Reference nvarchar = null, @Keyword nvarchar = null ) AS BEGIN SET NOCOUNT ON; DECLARE @SQL = 'SELECT ...' IF @RecruteurID IS NOT NULL @SQL = @SQL + 'RecruteurID = ' + @RecrteurID END IF ... EXEC(@SQL) END
Merci d'avance de votre aide
Partager