ragazzi,

in uno dei miei siti uso questo codice per selezionare i risultati delle ricerche

eseguo una query in sql su db mysql così

codice:
ingrediente=request("ingrediente")

QueryString = replace(ingrediente,"'"," ")
	QueryWords  = Split( QueryString )
	strIndent   = "               "

 sql = "SELECT * FROM ricette WHERE"
      
 sql=sql &" ingredienti LIKE '%" & QueryWords( 0 ) & "%'"			' Prima
	For i = LBound( QueryWords ) + 1 to UBound( QueryWords )
		If QueryWords( i ) <> "" and UCase( QueryWords(i) ) <> "OR" and UCase( QueryWords(i) ) <> "AND" Then
			If uCase( QueryWords( i-1 ) ) = "OR" Then
				sql = sql & " OR ingredienti LIKE '%" & QueryWords( i ) & "%'"
			Else
				sql = sql & " AND ingredienti LIKE '%" & QueryWords( i ) & "%'"
			End If
		End If
	Next
 
      sql = sql &" LIMIT " & (currentPage - 1) * pageSize & ", " & pageSize
supponendo che io inserisca nella textbox della ricerca la parola "funghi formaggio"

la query stampata diviene quindi

codice:
sql = "SELECT * FROM ricette WHERE ingredienti like '%funghi%' and ingredienti like '%formaggio%' LIMIT x,x"
dove x e x non ci interessano almeno in questa sede


ora io posso ordinare i risultati in base alla congruenza quindi ipotizzo di visualizzare prima i record che contengono nel campo ingredienti ripetute più volte le keys cercate.. o meglio ancora (ma forse è troppo) le keys che compongono la maggiorparte del campo ingredienti in misura percentuale.

Grazie a chi vorrà aiutarmi

Rik