当前位置: 首页 > news >正文

neo4j查询语言Cypher详解(三)--函数

函数

Cypher中的函数如果输入参数为null,则返回null。

以字符串作为输入的函数都对Unicode字符进行操作,而不是对标准字符进行操作。例如,size()函数应用于任何Unicode字符将返回1,即使该字符不适合一个字符的16位。

可以通过 SHOW FUNCTIONS 查看函数定义。

函数签名中参数格式:eg:

all(variable :: VARIABLE 		//:: VARIABLE,说明是个变量,可用于后面的 WHERE 部分IN 
list :: LIST OF ANY? 			//list,是个LIST泛型。
WHERE predicate :: ANY?			// predicate,是任意的断言
) 
:: (BOOLEAN?)					//函数返回值类型为BOOLEAN

断言函数

FunctionSignatureDescription
all()all(variable :: VARIABLE IN list :: LIST OF ANY? WHERE predicate :: ANY?) :: (BOOLEAN?)Returns true if the predicate holds for all elements in the given list.
any()any(variable :: VARIABLE IN list :: LIST OF ANY? WHERE predicate :: ANY?) :: (BOOLEAN?)Returns true if the predicate holds for at least one element in the given list.
exists()exists(input :: ANY?) :: (BOOLEAN?)Returns true if a match for the pattern exists in the graph.
isEmpty()isEmpty(input :: LIST? OF ANY?) :: (BOOLEAN?)Checks whether a list is empty.
isEmpty()isEmpty(input :: MAP?) :: (BOOLEAN?)Checks whether a map is empty.
isEmpty()isEmpty(input :: STRING?) :: (BOOLEAN?)Checks whether a string is empty.
none()none(variable :: VARIABLE IN list :: LIST OF ANY? WHERE predicate :: ANY?) :: (BOOLEAN?)Returns true if the predicate holds for no element in the given list.
single()single(variable :: VARIABLE IN list :: LIST OF ANY? WHERE predicate :: ANY?) :: (BOOLEAN?)Returns true if the predicate holds for exactly one of the elements in the given list.

标量函数

FunctionSignatureDescription
coalesce()coalesce(input :: ANY?) :: (ANY?)返回第一个非null值。
endNode()endNode(input :: RELATIONSHIP?) :: (NODE?)Returns the end node of a relationship.
head()head(list :: LIST? OF ANY?) :: (ANY?)Returns the first element in a list.
id()id(input :: NODE?) :: (INTEGER?)Deprecated Returns the id of a node. Replaced by elementId()
id(input :: RELATIONSHIP?) :: (INTEGER?)Deprecated Returns the id of a relationship. Replaced by elementId().
last()last(list :: LIST? OF ANY?) :: (ANY?)
length()length(input :: PATH?) :: (INTEGER?)Returns the length of a path.
properties()properties(input :: MAP?) :: (MAP?)返回一个对象的所有属性,作为一个map
properties(input :: NODE?) :: (MAP?)返回一个节点的所有属性,作为一个map
properties(input :: RELATIONSHIP?) :: (MAP?)返回一个关系的所有属性,作为一个map
randomUUID()randomUUID() :: (STRING?)
size()size(input :: LIST? OF ANY?) :: (INTEGER?)Returns the number of items in a list.
size(input :: STRING?) :: (INTEGER?)Returns the number of Unicode characters in a string.
startNode()startNode(input :: RELATIONSHIP?) :: (NODE?)
toBoolean()toBoolean(input :: STRING?) :: (BOOLEAN?)
toBoolean(input :: BOOLEAN?) :: (BOOLEAN?)
toBoolean(input :: INTEGER?) :: (BOOLEAN?)
toBooleanOrNull()toBooleanOrNull(input :: ANY?) :: (BOOLEAN?)转换为boolean,不能转换返回null。
toFloat()toFloat(input :: NUMBER?) :: (FLOAT?)
toFloat(input :: STRING?) :: (FLOAT?)
toFloatOrNull()toFloatOrNull(input :: ANY?) :: (FLOAT?)转换为小数,不能转换返回null。
toInteger()toInteger(input :: NUMBER?) :: (INTEGER?)
toInteger(input :: BOOLEAN?) :: (INTEGER?)
toInteger(input :: STRING?) :: (INTEGER?)
toIntegerOrNull()toIntegerOrNull(input :: ANY?) :: (INTEGER?)转换为整形,不能转换返回null。
type()type(input :: RELATIONSHIP?) :: (STRING?)Returns the string representation of the relationship type.

示例

CREATE (p:Person {name: 'Stefan', city: 'Berlin'})
RETURN properties(p)
//OUT PUT:
//: {"city":"Berlin","name":"Stefan"}

聚合函数

FunctionSignatureDescription
avg()avg(input :: DURATION?) :: (DURATION?)
avg(input :: FLOAT?) :: (FLOAT?)
avg(input :: INTEGER?) :: (INTEGER?)
collect()collect(input :: ANY?) :: (LIST? OF ANY?)收集数据作为一个LIST。
count()count(input :: ANY?) :: (INTEGER?)
max()max(input :: ANY?) :: (ANY?)
min()min(input :: ANY?) :: (ANY?)
percentileCont()percentileCont(input :: FLOAT?, percentile :: FLOAT?) :: (FLOAT?)
percentileDisc()percentileDisc(input :: FLOAT?, percentile :: FLOAT?) :: (FLOAT?)
`percentileDisc(input :: INTEGER?, percentile :: FLOAT?) :: (INTEGER?)
stdev()stdev(input :: FLOAT?) :: (FLOAT?)
stdevp()stdevp(input :: FLOAT?) :: (FLOAT?)
sum()sum(input :: DURATION?) :: (DURATION?)
`sum(input :: FLOAT?) :: (FLOAT?)
`sum(input :: INTEGER?) :: (INTEGER?)

集合函数

FunctionSignatureDescription
keys()keys(input :: MAP?) :: (LIST? OF STRING?)返回MAP的所有KEY LIST
keys(input :: NODE?) :: (LIST? OF STRING?)返回节点的所有属性 LIST
keys(input :: RELATIONSHIP?) :: (LIST? OF STRING?)返回关系的所有属性 LIST
labels()labels(input :: NODE?) :: (LIST? OF STRING?)Returns a list containing the string representations for all the labels of a node.
nodes()nodes(input :: PATH?) :: (LIST? OF NODE?)Returns a list containing all the nodes in a path.
range()range(start :: INTEGER?, end :: INTEGER?) :: (LIST? OF INTEGER?)Returns a list comprising all integer values within a specified range.
range(start :: INTEGER?, end :: INTEGER?, step :: INTEGER?) :: (LIST? OF INTEGER?)Returns a list comprising all integer values within a specified range created with step length.
reduce()`reduce(accumulator :: VARIABLE = initial :: ANY?, variable :: VARIABLE IN list :: LIST OF ANY?expression :: ANY) :: (ANY?)`
relationships()relationships(input :: PATH?) :: (LIST? OF RELATIONSHIP?)Returns a list containing all the relationships in a path.
reverse()reverse(input :: LIST? OF ANY?) :: (LIST? OF ANY?)Returns a list in which the order of all elements in the original list have been reversed.
tail()tail(input :: LIST? OF ANY?) :: (LIST? OF ANY?)Returns all but the first element in a list.
toBooleanList()toBooleanList(input :: LIST? OF ANY?) :: (LIST? OF BOOLEAN?)
toFloatList()toFloatList(input :: LIST? OF ANY?) :: (LIST? OF FLOAT?)
toIntegerList()toIntegerList(input :: LIST? OF ANY?) :: (LIST? OF INTEGER?)
toStringList()toStringList(input :: LIST? OF ANY?) :: (LIST? OF STRING?)

示例

toBooleanList()

RETURN toBooleanList(null) as noList,
toBooleanList([null, null]) as nullsInList,
toBooleanList(['a string', true, 'false', null, ['A','B']]) as mixedList
noListnullsInListmixedList
<null>[<null>,<null>][<null>,true,false,<null>,<null>]

总结:

  • 参数不是个LIST,报错
  • LIST 中的null,不转换,保留
  • LIST中的不可转换元素,结果为null。
  • BOOLEAN类型的元素,保留原始值

toFloatListtoIntegerListtoStringListtoBooleanList 规则类似。

数值函数

FunctionSignatureDescription
abs()abs(input :: FLOAT?) :: (FLOAT?)
abs(input :: INTEGER?) :: (INTEGER?)
ceil()ceil(input :: FLOAT?) :: (FLOAT?)
floor()floor(input :: FLOAT?) :: (FLOAT?)
isNaN()isNaN(input :: FLOAT?) :: (BOOLEAN?)Returns true if the floating point number is NaN.
isNaN(input :: INTEGER?) :: (BOOLEAN?)
rand()rand() :: (FLOAT?)
round()round(input :: FLOAT?) :: (FLOAT?)
round(value :: FLOAT?, precision :: NUMBER?) :: (FLOAT?)
round(value :: FLOAT?, precision :: NUMBER?, mode :: STRING?) :: (FLOAT?)
sign()sign(input :: FLOAT?) :: (INTEGER?)
sign(input :: INTEGER?) :: (INTEGER?)

对数函数

FunctionSignatureDescription
e()e() :: (FLOAT?)返回e。
exp()exp(input :: FLOAT?) :: (FLOAT?)返回e^n。
log()log(input :: FLOAT?) :: (FLOAT?)返回自然对数,以e为底
log10()log10(input :: FLOAT?) :: (FLOAT?)返回以10位底的对数
sqrt()sqrt(input :: FLOAT?) :: (FLOAT?)平方差

三角函数

FunctionSignatureDescription
acos()acos(input :: FLOAT?) :: (FLOAT?)
asin()`asin(input :: FLOAT?) :: (FLOAT?)
atan()atan(input :: FLOAT?) :: (FLOAT?)
atan2()atan2(y :: FLOAT?, x :: FLOAT?) :: (FLOAT?)
cos()cos(input :: FLOAT?) :: (FLOAT?)
cot()cot(input :: FLOAT?) :: (FLOAT?)
degrees()degrees(input :: FLOAT?) :: (FLOAT?)将弧度转换为角度
haversin()haversin(input :: FLOAT?) :: (FLOAT?)半正矢计算
pi()pi() :: (FLOAT?)
radians()radians(input :: FLOAT?) :: (FLOAT?)将角度转换为弧度
sin()sin(input :: FLOAT?) :: (FLOAT?)
tan()tan(input :: FLOAT?) :: (FLOAT?)

字符串函数

FunctionSignatureDescription
left()left(original :: STRING?, length :: INTEGER?) :: (STRING?)
ltrim()ltrim(input :: STRING?) :: (STRING?)
replace()replace(original :: STRING?, search :: STRING?, replace :: STRING?) :: (STRING?)
reverse()reverse(input :: STRING?) :: (STRING?)
right()`right(original :: STRING?, length :: INTEGER?) :: (STRING?)
rtrim()rtrim(input :: STRING?) :: (STRING?)
split()split(original :: STRING?, splitDelimiter :: STRING?) :: (LIST? OF STRING?)
split(original :: STRING?, splitDelimiters :: LIST? OF STRING?) :: (LIST? OF STRING?)
substring()substring(original :: STRING?, start :: INTEGER?) :: (STRING?)从0开始
substring(original :: STRING?, start :: INTEGER?, length :: INTEGER?) :: (STRING?)
toLower()toLower(input :: STRING?) :: (STRING?)
toString()toString(input :: ANY?) :: (STRING?)
toStringOrNull()toStringOrNull(input :: ANY?) :: (STRING?)
toUpper()toUpper(input :: STRING?) :: (STRING?)
trim()trim(input :: STRING?) :: (STRING?)

时间函数

FunctionSignatureDescription
date()date(input = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (DATE?)创建DATE
date.realtime()date.realtime(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (DATE?)使用 realtime clock 创建当前DATE
date.statement()date.statement(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (DATE?)使用 statement clock 创建当前DATE
date.transaction()date.transaction(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (DATE?)使用 transaction clock 创建当前DATE
date.truncate()date.truncate(unit :: STRING?, input = DEFAULT_TEMPORAL_ARGUMENT :: ANY?, fields = null :: MAP?) :: (DATE?)截断DATE
datetime()datetime(input = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (DATETIME?)
datetime.fromepoch()datetime.fromepoch(seconds :: NUMBER?, nanoseconds :: NUMBER?) :: (DATETIME?)
datetime.fromepochmillis()datetime.fromepochmillis(milliseconds :: NUMBER?) :: (DATETIME?)
datetime.realtime()datetime.realtime(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (DATETIME?)
datetime.statement()datetime.statement(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (DATETIME?)
datetime.transaction()datetime.transaction(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (DATETIME?)
datetime.truncate()datetime.truncate(unit :: STRING?, input = DEFAULT_TEMPORAL_ARGUMENT :: ANY?, fields = null :: MAP?) :: (DATETIME?)
localdatetime()localdatetime(input = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (LOCALDATETIME?)
localdatetime.realtime()localdatetime.realtime(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (LOCALDATETIME?)
localdatetime.statement()localdatetime.statement(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (LOCALDATETIME?)
localdatetime.transaction()localdatetime.transaction(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (LOCALDATETIME?)
localdatetime.truncate()localdatetime.truncate(unit :: STRING?, input = DEFAULT_TEMPORAL_ARGUMENT :: ANY?, fields = null :: MAP?) :: (LOCALDATETIME?)
localtime()localtime(input = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (LOCALTIME?)
localtime.realtime()localtime.realtime(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (LOCALTIME?)
localtime.statement()localtime.statement(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (LOCALTIME?)
localtime.transaction()localtime.transaction(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (LOCALTIME?)
localtime.truncate()localtime.truncate(unit :: STRING?, input = DEFAULT_TEMPORAL_ARGUMENT :: ANY?, fields = null :: MAP?) :: (LOCALTIME?)
time()time(input = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (TIME?)
time.realtime()time.realtime(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (TIME?)
time.statement()time.statement(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (TIME?)
time.transaction()time.transaction(timezone = DEFAULT_TEMPORAL_ARGUMENT :: ANY?) :: (TIME?)
time.truncate()time.truncate(unit :: STRING?, input = DEFAULT_TEMPORAL_ARGUMENT :: ANY?, fields = null :: MAP?) :: (TIME?)

时钟控制

  • transaction: 同一个事务,时间返回相同值。
  • statement: 同一个语句的同一次调用,时间返回相同值。
  • realtime: 系统时间。

截断单位

  • millennium:千年
  • century:世纪
  • decade:十年
  • year:
  • weekYear:
  • quarter:
  • month:
  • week:
  • day:
  • hour:
  • minute:
  • second:
  • millisecond: 毫秒
  • microsecond: 微秒

示例

date([{timezone}])
RETURN date() AS currentDate
RETURN date({timezone: 'America/Los Angeles'}) AS currentDateInLAdate({year [, month, day]})
UNWIND [
date({year: 1984, month: 10, day: 11}),
date({year: 1984, month: 10}),
date({year: 1984})
] AS theDate
RETURN theDatedate({year [, week, dayOfWeek]})
UNWIND [
date({year: 1984, week: 10, dayOfWeek: 3}),
date({year: 1984, week: 10}),
date({year: 1984})
] AS theDate
RETURN theDate

所有时间函数,都支持通过一个Map对象构造时间实例。

duration函数

FunctionSignatureDescription
duration()duration(input :: ANY?) :: (DURATION?)
duration.between()duration.between(from :: ANY?, to :: ANY?) :: (DURATION?)计算2个时间差
duration.inDays()duration.inDays(from :: ANY?, to :: ANY?) :: (DURATION?)
duration.inMonths()duration.inMonths(from :: ANY?, to :: ANY?) :: (DURATION?)
duration.inSeconds()duration.inSeconds(from :: ANY?, to :: ANY?) :: (DURATION?)

示例

duration([ {years, quarters, months, weeks, days, hours, minutes, seconds, milliseconds, microseconds, nanoseconds} ])duration(temporalAmount)   // temporalAmount STRING类型

duration标准字符串格式:P[nY][nM][nW][nD][T[nH][nM][nS]],具体见:https://neo4j.com/docs/cypher-manual/current/values-and-types/temporal/#cypher-temporal-specifying-durations

duration.between(instant1, instant2)

字段

  • years
  • quarters
  • months
  • weeks
  • days
  • hours
  • minutes
  • seconds
  • milliseconds
  • microseconds
  • nanoseconds

空间函数

FunctionSignatureDescription
point.distance()`point.distance(from :: POINT?, to :: POINT?) :: (FLOAT?)
point() - Cartesian 2Dpoint(input :: MAP?) :: (POINT?)
point() - Cartesian 3Dpoint(input :: MAP?) :: (POINT?)
point() - WGS 84 2D`point(input :: MAP?) :: (POINT?)
point() - WGS 84 3D`point(input :: MAP?) :: (POINT?)
point.withinBBox()point.withinBBox(point :: POINT?, lowerLeft :: POINT?, upperRight :: POINT?) :: (BOOLEAN?)

加载 CSV 函数

FunctionSignatureDescription
file()file() :: (STRING?)返回文件路径
linenumber()linenumber() :: (INTEGER?)返回行数

Graph functions

FunctionSignatureDescription
graph.names()graph.names() :: (LIST? OF STRING?)
graph.propertiesByName()graph.propertiesByName(name :: STRING?) :: (MAP?)
graph.byName()USE graph.byName(name :: STRING?)

用户自定义函数

TypeDescriptionUsageDeveloping
ScalarFor each row the function takes parameters and returns a result.Using UDFExtending Neo4j (UDF)
AggregatingConsumes many rows and produces an aggregated result.Using aggregating UDFExtending Neo4j (Aggregating UDF)

附录

参考

https://neo4j.com/docs/cypher-manual/current/functions/

相关文章:

neo4j查询语言Cypher详解(三)--函数

函数 Cypher中的函数如果输入参数为null&#xff0c;则返回null。 以字符串作为输入的函数都对Unicode字符进行操作&#xff0c;而不是对标准字符进行操作。例如&#xff0c;size()函数应用于任何Unicode字符将返回1&#xff0c;即使该字符不适合一个字符的16位。 可以通过 …...

kafka权威指南(阅读摘录)

零复制 Kafka 使用零复制技术向客户端发送消息——也就是说&#xff0c;Kafka 直接把消息从文件&#xff08;或者更确切地说是 Linux 文件系统缓存&#xff09;里发送到网络通道&#xff0c;而不需要经过任何中间缓冲区。这是 Kafka 与其他大部分数据库系统不一样的地方&#…...

【爬虫实践】使用Python从网站抓取数据

一、说明 本周我不得不为客户抓取一个网站。我意识到我做得如此自然和迅速&#xff0c;分享它会很有用&#xff0c;这样你也可以掌握这门艺术。【免责声明&#xff1a;本文展示了我的抓取做法&#xff0c;如果您有更多相关做法请在评论中分享】 二、计划策略 2.1 策划 确定您…...

win10 2022unity设置中文

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言解决方法 前言 在Edit->preferences里找不到language选项。 解决方法 【1】打开下面地址 注意 :把{version}换成你当前安装的版本&#xff0c;比如说如果…...

python表白代码大全可复制,python表白代码大全简单

大家好&#xff0c;小编来为大家解答以下问题&#xff0c;python表白代码大全可复制&#xff0c;python表白程序代码完整版&#xff0c;现在让我们一起来看看吧&#xff01; 今天是20230520&#xff0c;有人说&#xff1a;5代表的是人生五味&#xff0c;酸甜苦辣咸&#xff1b;…...

wordpress 打开缓慢处理

gravatar.com 头像网站被墙 追踪发现请求头像时长为21秒 解决方案一 不推荐&#xff0c;容易失效&#xff0c;网址要是要稳定为主&#xff0c;宁愿头像显示异常&#xff0c;也不能网址打不开 网上大部分搜索到的替换的CDN网址都过期了&#xff0c;例如&#xff1a;gravatar.du…...

Adobe ColdFusion 反序列化漏洞复现(CVE-2023-29300)

0x01 产品简介 Adobe ColdFusion是美国奥多比&#xff08;Adobe&#xff09;公司的一套快速应用程序开发平台。该平台包括集成开发环境和脚本语言。 0x02 漏洞概述 Adobe ColdFusion存在代码问题漏洞&#xff0c;该漏洞源于受到不受信任数据反序列化漏洞的影响&#xff0c;攻击…...

林【2018】

关键字: BST插入叶子结点、ADT结伴操作、队列插入前r-1、哈希函数二次探测法(1,-1,4,-4)、队列元素个数、折半查找失败次数、广义表链表结构、B-树构建、单链表指定位置插入数组元素 一、判断 二、单选 h(49)+1,-1,+4,-4...

ffmpeg+nginx实现rtsp协议摄像头web端播放

ffmpegnginx实现rtsp协议摄像头web端播放 环境准备准备nginx环境添加rtmp模块添加hls转发 使用ffmpeg&#xff0c;将摄像头rtsp转为rtmp并推送到nginxVLC播放验证 环境准备 nginx&#xff08;需要安装rtmp模块&#xff09;ffmpeg 6.0vlc播放器&#xff08;本地播放验证&#x…...

【周赛第69期】满分题解 软件工程选择题 枚举 dfs

目录 选择题1.2.3.4.面向对象设计七大原则 编程题S数最小H值 昨晚没睡好&#xff0c;脑子不清醒&#xff0c;痛失第1名 选择题 1. 关于工程效能&#xff0c;以下哪个选项可以帮助提高团队的开发效率&#xff1f; A、频繁地进行代码审查 B、使用自动化测试工具 C、使用版本控…...

P2015 二叉苹果树

P2015 二叉苹果树 类似于带限制背包问题&#xff0c;但不知道也能做。 n , q n,q n,q 范围小&#xff0c;大胆设 dp 状态。设 f u , i \large f_{u,i} fu,i​ 表示 u u u 子树内保留 i i i 根树枝的最大苹果数&#xff0c;可得状态转移方程 f u , i f u , j f v , i − …...

Linux 内核音频数据传递主要流程

Linux 用户空间应用程序通过声卡驱动程序&#xff08;一般牵涉到多个设备驱动程序&#xff09;和 Linux 内核 ALSA 框架导出的 PCM 设备文件&#xff0c;如 /dev/snd/pcmC0D0c 和 /dev/snd/pcmC0D0p 等&#xff0c;与 Linux 内核音频设备驱动程序和音频硬件进行数据传递。PCM 设…...

torch.device函数

torch.device 是 PyTorch 中用于表示计算设备&#xff08;如CPU或GPU&#xff09;的类。它允许你在代码中指定你希望在哪个设备上执行张量和模型操作&#xff0c;本文主要介绍了 torch.device 函数的用法和功能。 本文主要包含以下内容&#xff1a; 1.创建设备对象2.将张量和模…...

火车头采集器AI伪原创【php源码】

大家好&#xff0c;本文将围绕python作业提交什么文件展开说明&#xff0c;python123怎么提交作业是一个很多人都想弄明白的事情&#xff0c;想搞清楚python期末作业程序需要先了解以下几个事情。 火车头采集ai伪原创插件截图&#xff1a; I have a python project, whose fold…...

Python中常见的6种数据类型

数字&#xff08;Numbers&#xff09;&#xff1a;数字类型用于表示数值&#xff0c;包括整数&#xff08;int&#xff09;和浮点数&#xff08;float&#xff09;。 字符串&#xff08;Strings&#xff09;&#xff1a;字符串类型用于表示文本&#xff0c;由一系列字符组成。字…...

消息队列项目(2)

我们使用 SQLite 来进行对 Exchange, Queue, Binding 的硬盘保存 对 Message 就保存在硬盘的文本中 SQLite 封装 这里是在 application.yaml 中来引进对 SQLite 的封装 spring:datasource:url: jdbc:sqlite:./data/meta.dbusername:password:driver-class-name: org.sqlite.…...

解决MAC M1处理器运行Android protoc时出现的错误

Protobuf是Google开发的一种新的结构化数据存储格式&#xff0c;一般用于结构化数据的序列化&#xff0c;也就是我们常说的数据序列化。这个序列化协议非常轻量级和高效&#xff0c;并且是跨平台的。目前&#xff0c;它支持多种主流语言&#xff0c;比传统的XML、JSON等方法更具…...

C#使用SnsSharp实现鼠标键盘钩子,实现全局按键响应

gitee下载地址&#xff1a;https://gitee.com/linsns/snssharp 一、键盘事件&#xff0c;使用SnsKeyboardHook 按键事件共有3个&#xff1a; KeyDown(按键按下) KeyUp(按键松开) KeyPress(按键按下并松开) 以KeyDown事件为例&#xff0c;使用代码如下&…...

Zookeeper基础操作

搭建Zookeeper服务器 windows下部署 下载地址: https://mirrors.cloud.tencent.com/apache/zookeeper/zookeeper-3.7.1/ 修改配置文件 打开conf目录&#xff0c;将 zoo_sample.cfg复制一份&#xff0c;命名为 zoo.cfg打开 zoo.cfg&#xff0c;修改 dataDir路径&#xff0c…...

【CSS】说说响应式布局

目录 一、是什么 二、怎么实现 1、媒体查询 2、百分比 3、vw/vh 4、小结 三、总结 一、是什么 响应式设计简而言之&#xff0c;就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。 响应式网站常见特点&#xff1a; 同时适配PC 平板 手机等…...

数据结构 | 利用二叉堆实现优先级队列

目录 一、二叉堆的操作 二、二叉堆的实现 2.1 结构属性 2.2 堆的有序性 2.3 堆操作 队列有一个重要的变体&#xff0c;叫作优先级队列。和队列一样&#xff0c;优先级队列从头部移除元素&#xff0c;不过元素的逻辑顺序是由优先级决定的。优先级最高的元素在最前&#xff…...

Javascript怎样阻止事件传播?

在 JavaScript 中&#xff0c;可以使用事件对象的方法来阻止事件传播。事件传播指的是当一个元素上触发了一个事件&#xff0c;该事件会在事件流中传播到父元素或祖先元素&#xff0c;从而影响到它们。 事件传播有三个阶段&#xff1a;捕获阶段、目标阶段和冒泡阶段。阻止事件…...

web-csrf

目录 CSRF与XSS的区别&#xff1a; get请求 原理&#xff1a; pikachu为例 post请求 pikachu为例 CSRF与XSS的区别&#xff1a; CSRF是借用户的权限完成攻击&#xff0c;攻击者并没有拿到用户的权限&#xff0c;而XSS是直接盗取到了用户的权限 get请求 原理&#xff1a;…...

数据结构—图的存储结构

6.图 回顾&#xff1a;数据的逻辑结构 集合——数据元素间除 “同属于一个集合” 外&#xff0c;无其他关系。 线性结构——一个对一个&#xff0c;如线性表、栈、队列 树形结构——一个对多个&#xff0c;如树 图形结构——多个对多个&#xff0c;如图 6.1图的定义和术语 图:…...

Vue3 中 setup,ref 和 reactive 的理解

setup Vue3中使用了Composition API这种写法&#xff0c;使得所有的组合API函数都在此使用, 只在初始化时执行一次。 函数如果返回对象, 对象中的属性或方法, 模板中可以直接使用 ref 作用&#xff1a;定义一个数据的响应式 语法&#xff1a;const xxx ref(initValue) 一般用来…...

BL302嵌入式ARM控制器进行SQLite3数据库操作的实例演示

本文主要讲述了在钡铼技术BL302嵌入式arm控制器上运行 SQLite3 数据库的命令示例。SQLite3 是一个轻型的嵌入式数据库&#xff0c;不需要安装数据库服务器进程&#xff0c;占用资源低且处理速度快。 首先&#xff0c;需要将对应版本的 SQLite3 文件复制到设备的 /usr/ 目录下&…...

C++ 多线程:std::future

std::future std::future 简介示例1博客引用来源 std::future 简介 我们前面介绍的std::thread 是C11中提供异步创建多线程的工具&#xff0c;只能是异步运行任务&#xff0c;却无法获取任务执行的结果&#xff0c;一般都是依靠全局对象&#xff0c;全局对象在多线程下是及其不…...

断路器回路电阻试验

试验目的 断路器回路电阻主要取决于断路器动、 静触头的接触电阻, 其大小直接影响正常 运行时的发热情况及切断短路电流的性能, 是反应安装检修质量的重要数据。 试验设备 回路电阻测试仪 厂家&#xff1a; 湖北众拓高试代销 试验接线 对于单断口的断路器, 通过断口两端的接线…...

Python中的CALL_FUNCTION指令

在Python字节码中&#xff0c;CALL_FUNCTION指令后跟的数字代表这次函数调用需要从栈上取出的参数的数量。具体来说&#xff0c;这个数字包括位置参数和关键字参数的数量。 这个数字的低两位表示位置参数的数量&#xff0c;然后每两位表示一个关键字参数的数量。因此&#xff…...

微服务——es数据聚合+RestClient实现聚合

数据聚合 聚合的种类 DSL实现Bucket聚合 如图所示&#xff0c;设置了10个桶&#xff0c;那么就显示了数量最多的前10个桶&#xff0c;品牌含有7天酒店的有30家&#xff0c; 品牌含有如家的也有30家。 修改排序规则 限定聚合范围 DSL实现Metrics聚合 如下案例要求对不同的品…...

石家庄网站建设平台有哪些/建站系统主要包括

文章目录前言&#xff08;一&#xff09;套接字&#xff08;1&#xff09;认识套接字&#xff08;2&#xff09;套接字的属性1. 套接字的域2. 套接字类型3. 套接字协议前言 套接字接口 : 类似于管道的用法 套接字用途&#xff1a; 同一台计算机的进程通信支持分布在网络中的客户…...

关键词优化软件/武汉seo网站推广

考完了可以发题解了。 做法是link-cut tree维护子树信息&#xff0c;并不需要维护黑树白树那些的。 下面是一条重链&#xff1a; 如果4是根的话&#xff0c;那么在splay上是这样的&#xff1a; 在splay中&#xff0c;子树的信息都已经计算完毕&#xff0c;那么需要计算这个子树…...

wordpress php版本更改/湖南官网网站推广软件

jQuery创建、删除、添加元素 1、创建元素 2、添加元素 内部添加&#xff1a; 外部添加&#xff1a; 3、删除元素 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible&qu…...

网站从哪些方面做优化/朋友圈信息流广告投放价格

今天在CSDN上看到一个帖子 :".net 4.0和4.5不同版本的Uri.ToString行为不同&#xff1f;"&#xff0c; 调试.NET Framework 源代码发现&#xff0c;是这句代码起的作用 internal static bool ShouldUseLegacyV2Quirks{get{return UriParser.s_QuirksVersion < Uri…...

专业提供网站建设服务包括哪些/百度有钱花人工客服

C# 正则表达式正则表达式 是一种匹配输入文本的模式。.Net 框架提供了允许这种匹配的正则表达式引擎。模式由一个或多个字符、运算符和结构组成。定义正则表达式下面列出了用于定义正则表达式的各种类别的字符、运算符和结构。字符转义字符类定位点分组构造限定符反向引用构造备…...

做拍福利爱福利视频网站/百度短链接在线生成

SRC parquet是apache的开源项目&#xff0c;一个压缩格式。 parquet的数据自带表结构&#xff0c;所以需要创建schema对象。schema对象可以是spark中df的StructType&#xff0c;也可以是parquet官方提供的api usage 可以通过sql的形式读取parquet文件创建df al df ss.sql(…...