Neo4j入门教程2(看不懂评论区随便骂)

1. ORDER BY
create (s4:student{age:21,num:98}),(s5:student{age:22,num:86}),(s6:student{age:23,num:99})

承接上文,创建三个学生节点,标签为student1、student2、student3,分别拥有age属性和num属性

match(s:student) return s

查看我们创建的节点得到如下结果:
在这里插入图片描述

match (s:student) return s order by s.num

以上代码,按照num属性默认对返回的学生进行升序排序
在这里插入图片描述

match (s:student) return s order by s.num desc

如果需要降序排序,只需要在末尾加上desc即可
在这里插入图片描述

2. UNION语句
create (d:dog{name:"aaa",come_from:"四川",come_to:"重庆",id:"d_1"})
create (d:dog{name:"aab",come_from:"四川",come_to:"北京",id:"d_2"})
create (d:dog{name:"aac",come_from:"四川",come_to:"上海",id:"d_3"})
create (d:dog{name:"aad",come_from:"四川",come_to:"深圳",id:"d_4"})

先创建四只狗节点,属性:有名字,来自哪里,去往哪里,编号是什么
在这里插入图片描述

create (c:cat{name:"bba",come_from:"陕西",come_to:"四川",color:'yellow'})
create (c:cat{name:"aaa",come_from:"陕西",come_to:"新疆",color:'black'})
create (c:cat{name:"cca",come_from:"陕西",come_to:"西藏",color:'purple'})
create (c:cat{name:"dda",come_from:"陕西",come_to:"甘肃",color:'white'})

创建四只猫节点,属性有:名字,来自哪里,去往哪里,颜色是什么
在这里插入图片描述

接着使用UNION语句进行查询结果拼接

match (c:cat) return c.name, c.come_from, c.come_to union match (d:dog) return d.name, d.come_from, d.come_to

在这里插入图片描述
上述图片中说:返回的列名必须相同
为了解决此类错误:我们使用AS关键词将查询的列名起一个别名

match (c:cat) return c.name as name, c.come_from as come_from, c.come_to as come_to union match (d:dog) return d.name as name, d.come_from as come_from, d.come_to as come_to


这样我们就成功地执行了查询与合并操作,获得了猫和狗的信息显示在同一个表中

3. LIMIT和SKIP语句

limit用于限制查询语句时最多返回的记录数,这里limit=3,只返回前3条记录
在这里插入图片描述

skip用于跳过前面多少条记录,这里跳过第一条,返回最后3条记录
在这里插入图片描述

4. MERGE语句

对于CREATE语句来说,每次执行都会创建一个新的节点,即使这两个节点完全一样

create (info:Information{id:1, content:'none'})
create (info:Information{id:1, content:'none'})

在这里插入图片描述

但是如果使用MERGE语句,如果创建一个已经存在的节点,就不会创建(MERGE命令将新的节点添加到数据库,只有当它不存在)

merge (mes:Message{id:1, content:'none'})

如下图所示:当我们再次执行时:no changes, no records(数据库没有发生改变)
在这里插入图片描述
同时数据库中只会存在一个节点
在这里插入图片描述

5. IS NULL和IS NOT NULL

这是cat节点,其中四个有值,一个属性全为空
在这里插入图片描述

match (c:cat) where c.name is null return c #查询name属性为空的节点

在这里插入图片描述

match (c:cat) where c.name is not null return c #查询name属性为不空的节点

在这里插入图片描述

6. IN语句

在这里插入图片描述
查询猫标签时,有五个节点,包含一个空节点

match (c:cat) where c.name in ['bba', 'dda'] return c

IN和WHERE语句一起使用查询节点name属性在集合’bba’和’dda’中的节点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一般的一天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值