Estoy usando la base de datos documentdb desde hace mucho tiempo,
por lo tanto, tiene muchos registros/documentos en colecciones,
No, para simplificarlo, quiero obtener registros/documentos según la marca de tiempo.
He intentado escribir una consulta como esta, pero no funciona.
var curDate = new Date().getTime(); SELECT * FROM r WHERE r._ts >= @curDate AND r.studentId=@studentIdlos documentos new Date().getTime() dicen
Número que representa los milisegundos transcurridos entre el 1 de enero de 1970 a las 00:00:00 UTC y la fecha dada.
_ts documentos dicen
un número que representa el número de segundos transcurridos desde el 1 de enero de 1970
Entonces está comparando milisegundos con segundos, lo que no arrojará ningún resultado.
Debe dividir el primer valor por 1000 antes de compararlo con el segundo valor. Y, por supuesto, debe restar 1 día, 1 mes o cualquier valor que necesite, por ejemplo
var twoDaysAgo = new Date(); twoDaysAgo.setDate(d.getDate() - 2); var threshold = twoDaysAgo.getTime() / 1000; SELECT * FROM r WHERE r._ts >= @threshold AND r.studentId=@studentId