考虑这样一张表:
id,a,b 三个字段,id是主键
存在的查询条件有:
a=1
a=1 and b=1
b=1
无条件
这种场景,
建索引(a,b)的话可以支持1跟2,但是不支持3
建索引(b,a)的话可以支持2跟3,但是不支持1
如果扩展成n个同级别的筛选条件,则需要建O(n^2)个索引
有没好的设计思路?
举个例子:
字段区分度越大的优先在最左。
你那些条件 大部分都是可以枚举的。
考虑这样一张表:
id,a,b 三个字段,id是主键
存在的查询条件有:
a=1
a=1 and b=1
b=1
无条件
这种场景,
建索引(a,b)的话可以支持1跟2,但是不支持3
建索引(b,a)的话可以支持2跟3,但是不支持1
如果扩展成n个同级别的筛选条件,则需要建O(n^2)个索引
有没好的设计思路?
举个例子:
字段区分度越大的优先在最左。
你那些条件 大部分都是可以枚举的。