Bonjour,
je voudrais faire un select selon un ou plusieurs criteres de recherche,
ma requete ne comporte pas d'erreur mais ne fonctionne pas.
l'utilisateur peut entrer un ou plusieurs criteres .
Il faut tenir compte aussi que la valeur d'un champ peut etre a null
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
 
ALTER PROCEDURE [dbo].[RD4SelectByParams]
(
	@p_RrnNr varchar(50),
	@p_DateTakeBack datetime,
	@p_DateTransfer datetime,
	@p_DateExecutionTransfer datetime,
	@p_CoidCountryTakeBack varchar(50),
	@p_CoidBorder varchar(50),
	@p_CoidArticleBelgium varchar(50),
	@p_CoidArticleMemberState varchar(50)
)
AS
	SET NOCOUNT ON;
SELECT     IdRD4, RrnNr, DateTakeBack, CoidArticleMemberState, CoidArticleBelgium, DateTransfer, DateExecutionTransfer, CoidBorder, Eurodac, 
                      ChildrenUnder16, ChildrenOver16, Married, Commentary, Language, CoidTreatingAgent, CoidCountryTakeBack
FROM         RD4
WHERE (@p_RrnNr = '' OR RrnNr=@p_RrnNr )
AND (@p_DateTakeBack is NULL OR DateTakeBack = @p_DateTakeBack OR DateTakeBack IS NULL)
AND (@p_DateTransfer is NULL OR DateTransfer = @p_DateTransfer OR DateTransfer IS NULL) 
AND (@p_DateExecutionTransfer is NULL OR DateExecutionTransfer = @p_DateExecutionTransfer OR DateExecutionTransfer IS NULL) 
AND (@p_CoidCountryTakeBack = '' OR CoidCountryTakeBack = @p_CoidCountryTakeBack OR CoidCountryTakeBack IS NULL) 
AND (@p_CoidBorder = '' OR CoidBorder = @p_CoidBorder OR CoidBorder IS NULL) 
AND (@p_CoidArticleBelgium = '' OR CoidArticleBelgium = @p_CoidArticleBelgium OR CoidArticleBelgium IS NULL) 
AND (@p_CoidArticleMemberState = '' OR CoidArticleMemberState = @p_CoidArticleMemberState )