как получить данные по дате между двумя датами в PostgreSQL? [Дубликат]

package com;
public class SlidingWindow {

    public static void main(String[] args) {

        int[] array = { 1, 5, 2, 6, 3, 1, 24, 7 };
        int slide = 3;//say
        List<Integer> result = new ArrayList<Integer>();

        for (int i = 0; i < array.length - (slide-1); i++) {
            result.add(getMax(array, i, slide));

        }
        System.out.println("MaxList->>>>" + result.toString());
    }

    private static Integer getMax(int[] array, int i, int slide) {

        List<Integer> intermediate = new ArrayList<Integer>();
        System.out.println("Initial::" + intermediate.size());
        while (intermediate.size() < slide) {
            intermediate.add(array[i]);
            i++;
        }
        Collections.sort(intermediate);
        return intermediate.get(slide - 1);
    }
}
0
задан Bunker Boy 13 July 2018 в 11:38
поделиться

1 ответ

Вы можете создать таблицу дат даты, а затем подсчитать все даты. т.е.:

with dates ("date") as
(
select '2017-07-13'::date + i 
from generate_series(0, '2018-07-13'::date - '2017-07-13'::date) v(i)
)
select "date", count(myTable.id)
from dates
left join myTable on dates."date" = myTable.createdDate
group by dates."date";

Примечание: возможно, это тоже:

with dates as
(
select "date" 
from generate_series('2017-07-13'::date-1, '2018-07-13'::date,'1 day') v("date")
)
...
0
ответ дан Cetin Basoz 17 August 2018 в 13:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: