Thu, 23 Mar 2017 12:21 pm
Pernah berpikir melakukan query tanpa harus tahu nama kolomnya ? Misal : Saya mau mencari data dari kolom manapun yang mengandung banjarmasin. Tempat lahir, tempat tinggal, atau tempat bekerja yang terdapat kata banjarmasin dapat ditampilkan tanpa harus merinci, tempat lahir=banjarmasin, tempat tinggal=banjarmasin atau tempat bekerja = banjarmasin. Dengan mongodb query tanpa melihat nama kolom ini bisa dilakukan dengan :
{
  $text: {$search: "\"BANJARMASIN\" \"2015\" -BANJARNEGARA BJM", $caseSensitive: false}
}

Keterangan:
- Sebelum melakukan query diatas, field yang akan diquery harus diindex dulu dengan mengubah type ke TEXT. Misal dalam contoh ini adalah ketiga kolom seperti disebutkan diatas.
- Query text search tidak mencantumkan nama kolom sama sekali sebagaimana contoh diatas.
- Agar hasil query HARUS mengandung kata tertentu, apit dengan \" \".
- Agar hasil query TIDAK BOLEH mengandung kata tertentu, awali dengan negasi (-).
- Agar hasil query SEBAIKNYA mengandung kata tertentu, gunakan string biasa, contoh diatas BJM.
. #mongodb #nice
161
Additional Info: