在开发的时候,我们接触到的所有数据库都是有索引的。在neo4j中也是有索引的,索引主要的目的是为我们加快查询。所以本文我们演示下neo4j的索引。
1、新增索引
在neo4j中,对应的索引是加在属性上的,可以加在节点的属性上,也可以加在关系的属性上,和mysql的使用效果差不多。下面我们来演示一下:
#创建两个个节点 create (a:Person{name:'张三',age:5}) return a #为Person对象的name属性添加索引 create index idx_name for (a:Person) on (a.name)
添加完成之后,我们可以看到索引添加成功了
2、使用索引进行查询
接下来我们使用索引来进行查询
#索引查询 match (n:Person) where n.name = '张三' return n
可以看到我们查询到了对应的张三这个节点:
有人会说这个不加索引也可以这么查询,看不出来效果呢。
其实这里和mysql的索引查询是类似的,是系统会自动使用索引进行查询。所以对于我们来说是无感知的,当然我们可以显示强制使用索引查询:
match (n:Person) using index n:Person(name) where n.name = '张三' return n
也是可以查询出来的:
3、删除索引
当然我们还可以删除掉已经创建的索引,示例如下:
drop index idx_name
可以看到这里我们的索引就删除掉了。
4、查询所有的索引
neo4j整个库中数据量非常庞大,那么我们建立的索引可能都记不住,所以我们可能需要查看建立过哪些索引,可以使用如下的语句:
show indexes
这样就可以看到我们创建的所有索引了。
还没有评论,来说两句吧...