Если есть индекс для
page_type, our_id, date
и при запросе,
db.analytics.find({page_type: 'ingredients', ga_date:
{$gte : new Date('Wed Sep 08 2010 12:00:00 GMT-0800')}})
db.analytics.find({page_type: 'ingredients', ga_date:
{$gte : new Date('Wed Sep 08 2010 12:00:00 GMT-0800')}}).explain()
, если our_id
опущен или date
опущен, он все равно может использоватьindex, с чем-то вроде следующего в выводе объяснения ():
"our_id" : [
[
{
"$minElement" : 1
},
{
"$maxElement" : 1
}
]
],
, даже если оба параметра our_id
и date
опущены, индекс все еще можно использовать.
Однакокогда page_type
опущен, индекс не может быть использован (как показано в explain()
).Так верно ли, что в MongoDB, когда часть индекса является чем-то вроде последовательности, такой как число или дата, ее можно опустить при запросе?Верно ли это и в реляционной БД, потому что я думаю, что это может быть строго по 3 полям, если этот индекс основан на этих 3 полях.