私はたくさんの検索を実行しましたが、私の質問に対する答えを見つけることができません。しかし、私が求めていることは不可能かもしれません:
私は一連のテーブルを持っていますが、簡単にするために、次のものがあると仮定しましょう
記事articleIdSERIAL
ArticlePageNumberarticleId/参照Article.articleId /pageNumber Int
これはかなり自明ですが、受け入れられるデータは
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のデフォルト値を、シリアルと同じようにインクリメントしたいのですが、次の値は、その特定のarticleIdを持つエントリの前の値(存在しない場合は1)に依存します。
コードではなくSQL内の制約とチェックとしてこれを実行したいのですが、それは不可能かもしれないと思います。