Moteur de recherche multi-mots avec une procédure stockée

Contenu du snippet

Cette procédure permet de recherche des infos dans une base de données en entrant plusieurs mots clés ça peut être utile des fois

Source / Exemple :


CREATE procedure RechercheMultiMots
	@Test as varchar(200)
as

Declare @Reste varchar(200)
Declare @strSQL varchar(200)
Declare @Mots as varchar (200)

SET @Mots = ''
SET @strSQL = 'SELECT * FROM callTender WHERE'
SET @Reste = @Test

if (select CHARINDEX(' ',@Reste,1))>0

	select @Reste = (select RTRIM((select LTRIM(@Reste))))

while (@Reste != @Mots)
begin
	if (select CHARINDEX(' ',@Reste,1))>1
	begin
		select @Mots = (select SUBSTRING(@Reste,1,CHARINDEX(' ',@Reste,1)))
		select @Reste = (select LTRIM((select SUBSTRING(@Reste,CHARINDEX(' ',@Reste, 1), len(@Reste)))))
		SELECT @strSQL = (@strSQL + ' title LIKE ''%' + @Mots + '%'' AND')
	end
	else
	begin
		set @Mots = @Reste
		SELECT @strSQL = (@strSQL + ' title LIKE ''%' + @Mots + '%''')	
	end
	
	/*print (@strSQL)*/
end

exec (@strSQL)

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.