Получите самую старую запись за 7 дней - PullRequest
0 голосов
/ 28 сентября 2018

У меня есть запрос для получения данных 7 дней назад, но не удалось с «между».мой запрос:

SELECT b.sequence_number, b.message
FROM test.tab1 a, test.tab2 b
WHERE a.id = b.id 
AND a.delivery_date between (select min(delivery_date) from test.tab1) 
and (select min(delivery_date)-7 from test.tab1)

, но этот запрос не может получить результат.как решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018

Вам необходимо исправить промежуточный порядок, сначала должен быть меньший, а затем больший

SELECT b.sequence_number, b.message
FROM test.tab1 a, test.tab2 b
WHERE a.id = b.id 
AND a.delivery_date between (select min(delivery_date)-7 from test.tab1)
and (select min(delivery_date) from test.tab1) 
0 голосов
/ 28 сентября 2018

если вы хотите получить записи за последние 7 дней с текущей даты, тогда запрос будет

    SELECT b.sequence_number, b.message
    FROM test.tab1 a, test.tab2 b
    WHERE a.id = b.id 
    AND a.delivery_date>=current_date - interval '7 days'

, но если вы хотите 7 дней от вашей минимальной даты, то это будет

SELECT b.sequence_number, b.message
        FROM test.tab1 a, test.tab2 b
        WHERE a.id = b.id 
        AND a.delivery_date>=(select min(delivery_date)-7 from test.tab1) and a.delivery_date <=(select min(delivery_date) from test.tab1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...