» »

MongoDB | $text search; kako naredit %LIKE%

MongoDB | $text search; kako naredit %LIKE%

HotBurek ::

Pozdravljeni.

Po spodnjih navodilih sem naredil index na tabeli:
https://docs.mongodb.com/manual/core/li...

db.tabela1.createIndex(
    { title: "text", description: "text"},
    { name: "_title_description_fts_"}
);


Sedaj bi pa rad, da če iščem po besedi trol, da mi najde tudi troll, trollmaster itn.

Za search uporabim tole:

db.tabela1.find(
{
    $text: { $search: "trol", $caseSensitive: false,
    $diacriticSensitive: false, $language: "none" }
},
{
    "_id":1, "title":1, "description":1,
    score:{ $meta: "textScore" }
}
).sort( { score: { $meta: "textScore" }} );


Iz dokumentacije:
https://docs.mongodb.com/manual/referen...

So if a document field contains the word blueberry, a search on the term blue will not match. However, blueberry or blueberries will match.

Jst bi pa rad, da v zgornjem primeru išče podobno, kot v SQL-u dela LIKE "%trol%".


Sicer obstaja spodnja obcija, samo ta nima score možnosti (score je vedno 0.0):

db.tabela1.find(
{
    $or:[
    {"title": /^trol/},
    {"description": /^trol/}
    ]
},
{
    "_id":1, "title":1, "description":1,
    score:{ $meta: "textScore" }
}
);


Torej, kako v MongoDB naredit search, ki bo delal tako kot SQL LIKE %trol% (se pravi, da najde troll, trollmaster, ...), ter da bo zraven score, po katerem se da rezultate sortirat?
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[MariaDB] Kolikokrat se pojavi tekst v tekstu?

Oddelek: Programiranje
7816 (509) BigWhale
»

Slo-Tech userscripts

Oddelek: Izdelava spletišč
175175 (2627) jype
»

MySQL podatki iz več tabel

Oddelek: Programiranje
5887 (677) smacker
»

Kako se lotit? (php MySql)

Oddelek: Izdelava spletišč
161371 (851) technolog
»

Dodajanje slik (galerije) na spletno stran

Oddelek: Izdelava spletišč
61533 (1362) martincek1

Več podobnih tem