当属性值为null时,怎么表达where能利用好建立在属性上的索引
发布于 5 年前 作者 feng1990liu 3278 次浏览 来自 问答

比如name属性 有些节点是有值得 有些为null 就是没有这个属性 现在我想筛选出没有这个属性的节点有多少个 可以使用where name is null 但是这个其实没有上index 我想知道怎么表达才能用上index

6 回复

没想到什么好方法,对应属性为空值的节点似乎不会与索引关联的吧?如果要用index是不是考虑对这种空值属性赋一个空字符串,以空间换时间。 以上建议仅开脑洞供参考,这块并不太熟。

@zhoujieren64 我最直接也是这样想的 将属性值为空的赋一个特殊值

你直接建立索引在这个字段上, 用exists 判断是否存在这个字段

@bingo 很好使,谢谢!

@bingo exists 有索引,where not exists (property) 就没索引了。。

@feng1990liu肯定啊。非肯定会全表扫描的啊

回到顶部