Problème avec if .. else if.. else dans une fonction
	
	
		Bonjour,
Je suis débutante avec sql server et je voudrais créer la fonction suivante :
	Code:
	
| 12
 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
 33
 34
 35
 36
 37
 
 | CREATE FUNCTION [dbo].[advcdSearch]
(      
@adress nvarchar(4000),
@type nvarchar(4000),
@desc nvarchar(4000)
)
RETURNS Table AS RETURN
( 
if (@adress is not null and @type is not null and @desc is not null )
begin
SELECT dbo.Places.idPlace
from dbo.Places,dbo.Description
where(CONTAINS(dbo.Description.exactAdress,@adress) and CONTAINS(dbo.Description.specificDesc,@desc)
and CONTAINS(dbo.Description.type,@type))
and dbo.Places.idDesc=dbo.Description.idDesc
end
 
else if(@adress is not null and @type is not null and @desc is null)
begin
SELECT dbo.Places.idPlace
from dbo.Places,dbo.Description
where(CONTAINS(dbo.Description.exactAdress,@adress) and CONTAINS(dbo.Description.type,@type))
and dbo.Places.idDesc=dbo.Description.idDesc
end
 
else if(@adress is  null and @type is not null and @desc is not null)
begin
SELECT dbo.Places.idPlace
from dbo.Places,dbo.Description
where(CONTAINS(dbo.Description.specificDesc,@desc)and CONTAINS(dbo.Description.type,@type))
and dbo.Places.idDesc=dbo.Description.idDesc
end
else 
begin
Print 'aucun résultat'
end
 ) | 
 Mais le message d'erreur me s'affiche:
	Code:
	
| 12
 3
 4
 
 | Msg 156, Level 15, State 1, Procedure advcdSearch, Line 9
Incorrect syntax near the keyword 'if'.
Msg 102, Level 15, State 1, Procedure advcdSearch, Line 37
Incorrect syntax near ')'. | 
 Malgrès que ce même bolc if..else if..else marche bien dans une procédure .
je ne comprends pas d'où vient le problème :roll:
Merci de m'aider