假设我有一个如下的表格:
Column | Type | Notes
---------+------------ +----------------------------------------------------------
id | integer | An ID that's FK to some other table
seq | integer | Each ID gets its own seq number
data | text | Just some text, totally irrelevant.
id
+ seq
是一个组合键。
我想要看到的是:
ID | SEQ | DATA
----+------ +----------------------------------------------
1 | 1 | Quick brown fox, lorem ipsum, lazy dog, etc etc.
1 | 2 | Quick brown fox, lorem ipsum, lazy dog, etc etc.
1 | 3 | Quick brown fox, lorem ipsum, lazy dog, etc etc.
1 | 4 | Quick brown fox, lorem ipsum, lazy dog, etc etc.
2 | 1 | Quick brown fox, lorem ipsum, lazy dog, etc etc.
3 | 1 | Quick brown fox, lorem ipsum, lazy dog, etc etc.
3 | 2 | Quick brown fox, lorem ipsum, lazy dog, etc etc.
3 | 3 | Quick brown fox, lorem ipsum, lazy dog, etc etc.
3 | 4 | Quick brown fox, lorem ipsum, lazy dog, etc etc.
如您所见,id
和seq
的组合是唯一的。
我不确定如何设置我的表格(或插入语句)来做到这一点。我想插入id
和data
,导致seq
成为依赖于id
的子序列。
seq
反映(或应该反映)行插入的顺序,我更愿意使用自动填充的timestamp
并在选择行时动态生成一个seq
号码。 - user330315seq
在动态生成时变得不可靠。你想用这个结构解决什么问题呢?(例如,如果你的唯一目标是使id, seq
成对唯一,那么一个单独的序列就足够了--实际上它会使seq
唯一,但这意味着id, seq
成对唯一) - pozs