gpt4 book ai didi

postgresql - Postgres 如何使 2 个数字字段彼此唯一

转载 作者:行者123 更新时间:2023-11-29 13:25:10 24 4
gpt4 key购买 nike

我正在尝试做一个许多社交网络都有的关注/追随者类型的概念。我有 2 个名为 mefollowing 的 INT 字段,这些 INT 字段由用户唯一 ID 组成。我想这样做,如果用户 23 正在关注用户 7 或 23->7,则用户 23 无法再次关注用户 7,因为该关系已经存在。这张照片会把事情搞清楚

enter image description here

注意上面的前两行是 31->27 或者用户 31 跟随 27 两次是多余的。我可以使用一些约束来防止这种情况发生吗?我正在使用 postgres 9.4 版

最佳答案

您可以通过创建唯一索引来做到这一点。但不仅仅是任何唯一索引,一个关于表达式的索引:

create unique index unq_t_me_following
on (least(me, following), greatest(me, following));

关于postgresql - Postgres 如何使 2 个数字字段彼此唯一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35159550/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com