Я выполнил много поиска, но не смог найти ответ на мой запрос. То, что я прошу не может быть возможным, однако:Значение приращения по умолчанию в таблице postgresql
У меня есть ряд таблиц, но для упрощения будем считать, что у меня есть следующие
Статья ArticleID SERIAL
ArticlePageNumber ArticleID/ссылки статьи .articleId/ PageNumber Int
Это довольно очевидно, однако пояснительные данные thatwould быть приемлемым будет
Article
-------
articleiId
1
2
ArticlePageNumber
-----------------
articleiId pageNumber
1 1
1 2
1 3
1 4
1 5
1 6
2 1
2 3
2 5
2 2
2 4
неприемлемый таблица будет ArticlePageNumber
ArticlePageNumber
-----------------
articleiId pageNumber
1 1
1 1
1 2
1 3
1 4
1 5
2 1
2 3
2 5
2 4
Я хотел бы значение по умолчанию для ArticlePageNumber.pageNumber прирастить аналогично тому, как это делает последовательный, однако следующее значение будет зависеть от предыдущего значения (или 1, если нет) для записей с этой конкретной статьей.
Я бы предпочел сделать это в качестве ограничений и проверок внутри SQL, а не с кодом, но я предполагаю, что это может быть невозможно.
Возможно похожий на http://stackoverflow.com/questions/12746106/how-to-create-multiple-sequences-in-one-table/12746929 – jcern
@jcern на рассмотрение другого вопроса, вы совершенно правы есть довольно много сходства и есть несколько предложений, которые могут решить мою проблему. Спасибо. – Peter