2014-11-20 2 views
0

Как я должен хранить несколько start и end «следуют» диапазоны дат в post_follow и запроса для всех post_changes к POST_ID в заданных временных диапазонов?строк в Запросы к нескольким диапазонам

В настоящее время у меня есть таблицы:

post_follow:

(
    user_id int, 
    post_id int, 
    start date, 
    end date 
) 

и

post_changes:

(
    post_id: int, 
    -- ... 
    time timestamp 
) 

Однако, я хочу добавьте опцию, чтобы отменить/следовать за сообщениями, но все равно показывать post_changes, которые произошли в течение промежутков времени, когда пользователь «следит» за публикацией сообщения.

например. follow @ 1/1/14, unfollow @ 1/5/14, follow @ 1/10/14 ... Итак, в этом случае я хочу показать изменения в следующем сообщении между 1/1/14 и 1/5/14 и между 1/10/14 и текущей датой.

ответ

1

возможно follow boolean?
И PostgreSQL имеет диапазоны типов временного диапазона диапазона tsrange, и диапазон дат daterange.
Это упростит ваши запросы.

Пожалуйста, обратитесь к документации PostgreSQL о диапазонах и операторов на них:

Postgresql Range types
Range operators

Смежные вопросы