能否创建一种特别的unique索引:带条件
形如以下内容:
create unique index userName on employee(userName) where isValid=1
因为,isValid=0的记录属于做了删除标记的记录,很可能有多条,但需要确保isValid=1的记录没有重复的userName
我不太清楚能否对view创建索引,但我目前用的数据库很可能不支持view,所以希望不要通过view来实现。
如果有其他简单的方式能控制也行。
------解决方案--------------------建立索引没有条件之说,
索引是建立在哪一列或哪些列,而不是建立在那一行或哪些行
------解决方案--------------------这个问题其实挺典型的,我也一直希望所有的数据库都能实现这个功能。这个叫“部分索引”,只有几个数据库有这个功能,像postgrep,大部分数据库都没有的。楼主暂时只能换别的方法实现了,比如建另外一个表,只存有效的记录