如何创建包含唯一id的列以匹配现有列



我在SQL Server中有一个现有的表,它看起来像下面,它是与多个用户对话中的评论列表。ID是递增的PK,而ConversationSet标识特定对话中的评论。这个表保存了许多不同的conversationset。

ConversationSet

您可以使用rank():

select t.*,
rank() over (partition by conversationset order by name) as name_id
from t;

如果您希望给定名称在所有对话中具有相同的id,则删除partition by

如果你想要无间隙数字,你可以使用dense_rank():

select t.*,
dense_rank() over (partition by conversationset order by name) as name_id
from t;

相关内容

  • 没有找到相关文章

最新更新