2011-09-21 136 views
8

这将等同于此SQL语句吗?如何在Mongo中按日期和日期范围查询

Select * from example WHERE date = '2011-09-21' 

该记录与MongoDate字段一起存储。

我也想知道查询之间的语法。

+0

您是否在寻找手册信息? (http://php.net/manual/en/class.mongodate.php) –

回答

8

这将等于这个SQL语句吗?

SELECT * FROM例子日期= '2011-09-21'

db.example.find({date: dateobject}); 

在MongoDB中+ PHP的情况下,你会想用[MongoDate][2]类来表示这些日期。其他语言驱动程序通常只使用语言日期构造。

我也想知道查询之间的语法。

MongoDB没有between子句。

要使用“大于”,您将需要使用其中一个查询运算符。详细信息请参见here。简单示例:

db.example.find({ date: { $gt: lowdate, $lt: highdate } }); 
+1

我希望得到PHP驱动程序的确切语法。我试过'代码'$ startDate = new MongoDate(strtotime($ post ['startdate'])); $ query = array(“date”=> $ startDate); $ cursor = $ collection-> find($ query);'code' and this did not work – mabuza

+4

'$ query = array('$ gt'=> $ startDate,'$ lt'=> $ endDate);'should做的伎俩。 – ceejayoz