前言:用户上传图片,表中数据为[{id:1, user_id:U001, pic:1.jpg, status:1}];用户重新上传图片,表中的数据变为[{id:1, user_id:U001, pic:1.jpg, status:0}; {id:2, user_id:U001, pic:2.jpg, status:1}]。一个用户只能有一条有效数据,设置唯一性约束的时候就很难设置了。之后发现了特殊索引的设置方法,可以满足这个要求
正文:
create unique index aname on table_name(decode(status, 1, id, null));
参考博客:
Oracle索引也可以这么建 - 关注系统性能调优 - 优快云博客
https://blog.youkuaiyun.com/stevendbaguo/article/details/54906555
本文介绍了一种在Oracle数据库中设置特殊唯一性约束的方法,通过使用decode函数结合status字段,确保每个用户仅有一条有效记录,解决了传统唯一索引难以实现的问题。
2784

被折叠的 条评论
为什么被折叠?



