我的数据:
我正在寻找一种使用自定义日期范围过滤日期的方法。 我在网上看到了一些查询日期的示例, 但是时间戳始终是关键,在我看来,这是不可能的。 我已经尝试了下面的代码,但是没有用。
public class program45{
public static void main(String args[]){
int count1=0,num1=0;
for (int num=1; num<=1000; num++ ){
int count=0
for(int facnum=1; facnum<=num; facnum++){
if(num%facnum==0){
count++;
}
}
if(count>count1){
num1=num;
count1=count;
}
}
System.out.println(num1+" has the most factors");
System.out.print("they are ");
for(int facnum1=1; facnum1<=num1; facnum1++){
if (num1%facnum1==0){
System.out.print(facnum1+", ");
}
}
}
}
这似乎不起作用。有什么想法吗?
答案 0 :(得分:1)
您正在尝试按日期值进行过滤,但您按type
进行排序,这不是Firebase数据库查询的工作方式:您总是先对属性/值进行排序,然后再对同一属性/进行过滤值。
因此要在regdate
上订购/过滤:
firebase.database().ref().child("Users").orderByChild('regdate')
.startAt("2019-01-05").endAt("2019-01-10");
请注意,我也将endat
更改为endAt
(大写的A
)。您拥有的endat
将给出语法错误。
您现在以2019-01-10
结尾。由于您的实际值包含一个时间,因此它们都将落在该值之后。如果您还想包括自己在2019-01-10
上注册的用户,请使用:
firebase.database().ref().child("Users").orderByChild('regdate')
.startAt("2019-01-05").endAt("2019-01-10 23:59:59");