В монгоДБ можно сортировать по части поля(строки)?
В БД записаны строки "yyyy-mm-dd hh:ii:ss", нужно сделать сортировку по части строки "yyyy-mm-dd". Можно как-то использовать оператор substr в сортировке?
И чем будет отличаться сортировка по "yyyy-mm-dd" от "yyyy-mm-dd hh:ii:ss"? Эти отличия для вас точно критичны? Если критичны, то "в духе Монги" (в духе документного денормализованного хранения данных) записывайте "yyyy-mm-dd" в отдельное индексируемое поле, чтобы потом извлекать по индексу в нужном порядке сортировки без потерь производительности.
napa3um: нужно сортировать по двум полям, первая сортировка сегодняшний день, а вторая сумма. Если сортировать по yyyy-mm-dd hh:ii:ss, то по сумме уже можно не сортировать. Выходит мне нужно до даты все отрезать
Arik: записывай в отдельное поле сумму, в отдельное поле дату (без времени), создавай compound index поверх этих двух полей. Поле "yyyy-mm-dd hh:ii:ss" можно заменить на "hh:ii:ss", читая дату и время из отдельных полей, если это не мешает другой логике.
Arik: важно научиться с Монгой думать не как с MySQL, документное хранилище содержит в общем случае намеренно денормализованные данные, в отличие от реляционных хранилищ, в которых данные стараются моделировать в нормализованном виде. Как бы немного разные области применения (хотя, конечно, во многом они взаимозаменяемы).