2016-06-22 3 views
1

$cond в MongoDB определяется следующим образом:Логическое выражение со строковым сравнением в Mongodb?

$cond: { if: { $gte: [ "$qty", 250 ] }, then: 30, else: 20 } 

Но, мы можем сделать это для строки? Я хочу, чтобы сравнить значение строки внутри документа с регулярным выражением, так что-то, как это может работать:

$cond: { if: { $match: [/sam/, "$name"] }, then: 30, else: 20 } 

/sam/ является регулярным выражением и "$name" это поле, я хочу, чтобы сравнить. В качестве побочного примечания это выражение будет помещено в совокупный конвейер.

ответ

0

Нет, что в данный момент недоступно и является открытым feature request.
В зависимости от ваших потребностей вы можете делать свои вещи с $substr

+0

$ regexmatch в этом примере близко соответствует тому, что мне нужно. Думаю, мне нужно использовать $ substr – DennyHiu