博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Neo4j学习Day6~7
阅读量:4046 次
发布时间:2019-05-24

本文共 2948 字,大约阅读时间需要 9 分钟。

Neo4j学习Day6~7

1.Neo4j CQL字符串函数

字符串列表

S.No. 功能 描述
1 toupper 它是用来改变所有的字母为大写字母。
2 lower 它是用来改变所有的字母为小写字母。
3 SUBSTRING 它是用来获得一个给定的String的子字符串。

1.1 toupper

toupper(
)

注意,<input-string>可以是Neo4j的数据库节点或者关系属性名。

1.2 lower

lower(
)

注意,<input-string>可以是Neo4j的数据库节点或者关系属性名。

1.3 substring

substring(
,
,
)

在Neo4j的CQL,如果一个字符串包含N个字母,那么它的长度为n和指数从0开始,并在N-1结束。

<startIndex>是指数值子字符串函数。

<endIndex>是可选的。 如果我们忽略它,则返回从startIndex到指定的字符串结束的字符串的子字符串。

【示例】接下来将一次性对上面3个函数进行示例

  • 打开数据浏览器
  • 输入以下命令创建出一个stu节点
CREATE(stu:Student{id:'1001',name:'abc',age:'19'})CREATE(stu:Student{id:'1002',name:'def',age:'17'})MATCH(stu:Student)RETURN stu.id,stu.name,stu.age

  • 现在先行尝试toupper函数。
match(stu:Student)return stu.id,toupper(stu.name),stu.age

**【注意】**如果按照上面命令,使用的是upper函数,由于Neo4j在4.2.6版本是不支持的,但是会提示你使用toupper函数。同理,lower()也要修改为tolower()。如下面命令第一行。

The function upper() is no longer supported. Please use toUpper() instead (line 2, column 15 (offset: 34))"RETURN stu.id AS `stu.id`, upper(stu.name) AS `upper(stu.name)`, stu.age AS `stu.age`"
  • 接下来使用substring()函数
match(stu:Student)return stu.id,substring(stu.name,0,2),stu.age

得到如下结果。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-guHk1FvM-1623248491722)(https://ftp.bmp.ovh/imgs/2021/06/a3a584f6c4a6540b.png)]

2.聚合函数

S.No. 聚集功能 描述
1 count 它返回由MATCH命令返回的行数。
2 MAX 它返回从一组由MATCH命令返回行的最大值。
3 MIN 它返回从一组由MATCH命令返回行的最小值。
4 sum 它返回由MATCH命令返回的所有行的总和值。
5 AVG 它返回由MATCH命令返回的所有行的平均值。

2.1 count

count(
)

其中,<value>可能是*,一个节点或关系标签名称或属性名称。

2.2 max

MAX(
)

2.3 min

min(
)

注意,<property-name>应该是一个节点或关系的名称。

2.4 AVG

AVG(
)

2.5 SUM

sum(
)

【示例】

  • 接下来使用其中的若干函数进行基本的使用。
  • 如上面示例所创建的stu节点。

输入以下命令。

match(stu:Student)return count(stu.id)--返回couny(stu.id)为2match(stu:Student)return max(stu.id)--返回id='1002'

3.Neo4j CQL - 功能关系

语法如下:

STARTNODE (<relationship-label-name>)

注意:

<relationship-label-name>可能是从Neo4j数据库节点或者关系的属性名。

4.Neo4j的索引操作

  • 创建索引
  • DROP INDEX

4.1 创建索引

语法如下:

CREATE INDEX ON :
(
)

注意:-

冒号(:)操作符是用来指一个节点或关系标签名称。

上述语法描述了它的<PROPERTY_NAME> <LABEL_NAME>节点或关系创建一个新的指标。

4.2 删除索引

DROP INDEX语法:

DROP INDEX ON :
(
)

注意:

冒号(:)操作符是用来指一个节点或关系标签名称。

上面的语法描述它丢弃创建的现有指数节点或关系的<PROPERTY_NAME>,<LABEL_NAME>

5.唯一约束

5.1 创建唯一约束

Neo4j的CQL提供了“创建约束”命令创建的节点或关系的属性的唯一约束。

其语法如下:

CREATE CONSTRAINT ON (
)ASSERT
IS UNIQUE

语法说明

S.No. 语法元素 描述
1 创建约束ON 这是一个Neo4j的CQL关键字。
2 <LABEL_NAME> 这是一个节点或关系的标签名称。
3 ASSERT 这是一个Neo4j的CQL关键字。
4 <PROPERTY_NAME> 这是一个节点或关系的属性名。
5 UNIQUE 这是一个Neo4j的CQL关键字通知Neo4j的数据库服务器上创建一个唯一约束。

注意:

上述语法描述了它的<PROPERTY_NAME> <LABEL_NAME>节点或关系创造了一个独特的约束。

5.2 删除唯一约束

Neo4j的CQL提供了“DROP约束”命令从一个节点或关系的财产删除现有的唯一约束。

DROP CONSTRAINT ON (
)ASSERT
IS UNIQUE

语法说明

S.No. 语法元素 描述
1 DROP约束 这是一个Neo4j的CQL关键字。
2 <LABEL_NAME> 这是一个节点或关系的标签名称。
3 ASSERT 这是一个Neo4j的CQL关键字。
4 <PROPERTY_NAME> 这是一个节点或关系的属性名。
5 UNIQUE 这是一个Neo4j的CQL关键字通知Neo4j的数据库服务器上创建一个唯一约束。

注意

上述语法描述了从<LABEL_NAME>节点或关系的<PROPERTY_NAME>drop的唯一约束。

转载地址:http://tegdi.baihongyu.com/

你可能感兴趣的文章
mongdb安装使用
查看>>
mongdb在java中的应用
查看>>
区块链技术让Yotta企业云盘为行政事业服务助力
查看>>
Yotta企业云盘更好的为媒体广告业服务
查看>>
Yotta企业云盘助力旅游行业新发展
查看>>
Yotta企业云盘助力科技行业创高峰
查看>>
Yotta企业云盘更好地为教育行业服务
查看>>
Yotta企业云盘怎么帮助到能源化工行业
查看>>
企业云盘如何助力商业新发展
查看>>
医疗行业运用企业云盘可以带来什么样的提升
查看>>
教育数字智能化能为现有体系带来新的起点
查看>>
媒体广告业如何将内容资产进行高效地综合管理与利用
查看>>
能源化工要怎么管控核心数据
查看>>
媒体广告业如何运用云盘提升效率
查看>>
企业如何运用企业云盘进行数字化转型-实现新发展
查看>>
司法如何运用电子智能化加快现代化建设
查看>>
iSecret&nbsp;1.1&nbsp;正在审核中
查看>>
IOS开发的开源库
查看>>
IOS开发的开源库
查看>>
Jenkins - sonarqube 代码审查
查看>>