2013-02-15 44 views
1

我有一個PostgreSQL的查詢,它看起來像LOWER(content) LIKE '%lra%'。我正在將其遷移到MonogoDB。我正在尋找一個等值。這是我到目前爲止的MongoDB等效LOWER()在PostgreSQL的

db.contents.find({content: /lra/i}) 

我正在通過正則表達式的方式。有沒有辦法指定它是這樣的:

db.contents.find({content: {$lower: /lra/}}) 

回答

4

不是沒有沒有全表掃描的時刻。

最好的辦法是將字符串存儲在另一個領域已經處於較低的情況下,然後一個「真正的」字段存儲與它保持不變。

你可以用聚合框架使用http://docs.mongodb.org/manual/reference/aggregation/toLower/#exp._S_toLower來做到這一點,但這並不比坦率地展示的正則表達式好得多。

由於@AdaTheDev發現,那裏是它的一個JIRA:https://jira.mongodb.org/browse/SERVER-90

+2

我想補充,這JIRA項目值得關注:https://jira.mongodb.org/browse/SERVER-90 – AdaTheDev 2013-02-15 12:00:05

+0

@AdaTheDev謝謝:)正在尋找 – Sammaye 2013-02-15 12:01:11