webForumDet fria alternativet

Fritextsökning i flera nivåer

Programmering

1 svar · 623 visningar · startad av Peeer

Medlem sedan mars 20025 907 inlägg
Frågan#1

Hej!
Håller på att bygga upp en liten applikation där användarna ska kunna skapa olika typer av objekt. Varje objekt kan i sin tur innehålla ett eller flera underobjekt (bara en nivå av underobjekt, så totalt två olika nivåer av objekt).

* A
** A1
** A2
* B
** B1
* C
* D
** D1
** D2
** D3

Objekten på alla nivåer kommer innehålla texter som jag vill kunna söka på, men jag vill bara få träffar på huvudobjekten. Dvs om jag söker efter något som finns på A1 så vill jag få en träff på A, finns innehållet på B så vill jag få träffen på B. Problemet blir när det blir mer komplexa sökfrågor, ex delar av sökfrasen finns på D1, andra delar på D2 och ytterligare någon del finns på huvudobjektet D. Då hela sökfrågan uppfylls av D (tillsammans med D:s underobjekt) så vill jag få träff på D.

Hur gör man det här på bästa sätt? En tanke är att dubbellagra allt innehåll från underobjekten på huvudobjektet i databasen, på så sätt räcker det med att söka direkt i huvudobjektet (all data finns ju där), men det känns inte helt rätt att duplicera.

.Net är det som används om det påverkar någonting.

Medlem sedan mars 20025 907 inlägg
#2

Ingen som har några tankar?

254 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)