Moteur de recherche

Contenu du snippet

Création d'une requette SQL de recherche avec plusieurs mots clés.

Source / Exemple :


'*************Création de la requette SQL de recherche***********************
set conn=server.createobject("adodb.connection")
conn.open "--nom du dns--"

dim table
dim mot_cle
dim requette
dim listecle

'****Nom de la table et des champs de recherche********
table="produits"
	
	dim champ(5)
	champ(0)="champ1"
	champ(1)="champ2"
	champ(2)="champ3"
	champ(3)="champ4"
	champ(4)="champ5"

'****Mot cle****
mot_cle="paris marseille nancy rouen montpellier"

'****Type de recherche***
'config=1 tous les motes clés
'config=2 ou moins un des mots clés
config=1

requette="select * from "&table&" where "

if mot_cle<>"" then

	listecle = Split(replace(mot_cle,"'","''")," ",-1, 1)
	
	i=0
	while i<=UBound(listecle)
		if config=1 then
		if i>0 then requette=requette&" and " end if
		else
		if i>0 then requette=requette&" or " end if
		end if
			i2=0
			while i2<UBound(champ)
				if i2=0 then 
				requette=requette&"("
				else
				requette=requette&" or "
				end if
				requette=requette&champ(i2)&" like '%"&listecle(i)&"%'"
				if i2=(UBound(champ)-1) then requette=requette&")" end if
			i2=i2+1
			wend
	i=i+1
	wend

end if

set resultat=conn.execute(requette)
'*************Création de la requette SQL de recherche***********************

l'exemple ci-dessus renvoi cette requette SQL

select * from produits where (champ1 like '%paris%' or champ2 like '%paris%' or champ3 like '%paris%' or champ4 like '%paris%' or champ5 like '%paris%') and (champ1 like '%marseille%' or champ2 like '%marseille%' or champ3 like '%marseille%' or champ4 like '%marseille%' or champ5 like '%marseille%') and (champ1 like '%nancy%' or champ2 like '%nancy%' or champ3 like '%nancy%' or champ4 like '%nancy%' or champ5 like '%nancy%') and (champ1 like '%rouen%' or champ2 like '%rouen%' or champ3 like '%rouen%' or champ4 like '%rouen%' or champ5 like '%rouen%') and (champ1 like '%montpellier%' or champ2 like '%montpellier%' or champ3 like '%montpellier%' or champ4 like '%montpellier%' or champ5 like '%montpellier%')

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.

Du même auteur (cs_pacman)