Berikut ini query mysql untuk like:select * from namatabel where namakolom LIKE '%katakunci%' order by kolomsort DESC LIMIT 0, 10
Untuk digunakan di mongoDB php, kita gunakan:
$tableName = 'namacollection';
$kolom = 'kolomygdicari';
$manager = new MongoDB\Driver\Manager();
$filter = array($kolom=> new MongoDB\BSON\Regex($keyword, 'i'));
$options = array('limit'=>$limit,'skip'=>$skip,'sort'=>array($sortby=>-1));
$query = new MongoDB\Driver\Query($filter, $options);
$cursor = $manager->executeQuery($dbName.'.'.$tableName, $query);
$cursor->setTypeMap(['root' => 'array', 'document' => 'array', 'array' => 'array']);
$cursor = $cursor->toArray();
foreach ($cursor as $document) {
$document['_id'] = (array) $document['_id'];
Untuk lebih memahami tentang mapping query mysql dengan mongoDB bisa cek link berikut ini
https://docs.mongodb.com/manual/reference/sql-comparison/
db.people.find( { user_id: /bc/ } )
db.people.find( { user_id: { $regex: /bc/ } } )
db.people.find( { user_id: /^bc/ } )
Demikian terimakasih, semoga bermanfaat.
0 Comments