我是Neo4J密码的新手,我知道我想在SQL中得到什么,但不能在密码中创建查询。
让我们有三张桌子:
Pers(persId,name,workId,born)
Work(workId,name)
Friend(pers1Id,pers2Id)
问题:找人,谁在同一家公司工作,而不是朋友和年龄差异是较少的than5。在SQL中,一个简单的查询如下所示:
select * from Pers p1 join Pers p2 on p1.workId=p2.workId
where not exists
(select 1 from Friend f where p1.persId in (f.
我想在neo4j中的IN子句密码中添加一个子查询,如下所示
update Contact set LookedupStatus = 1 where ContactId IN (SELECT
ContactId FROM Contact where
((FacebookUrl IS NOT NULL) or (TwitterUrl IS NOT NULL) or (LinkedinUrl
IS NOT NULL))
and
((FacebookUrl != '') or (TwitterUrl != '') or (LinkedinUrl != '
我用neo4j构建了一个图表。当我使用以下密码查询进行搜索时,它没有得到任何结果。
MATCH (n:node)
where n.prop='pro1'
RETURN n
LIMIT 25
我确信n.prop='pro1'存在。查询就能工作了。
MATCH (n:node)
where exists(n.prop)
RETURN n
LIMIT 25
为什么第二个查询返回结果,而第一个查询不返回结果?
我在SQL中有以下查询:
Select Id, CrawlerId,CrawlerName,
(SELECT Count(*) from CrawlerResult cr where cr.CrawlerId = cs.CrawlerId and IsNew=1) as LastRunResult ,
(SELECT Count(*) from CrawlerResult cr where cr.CrawlerId = cs.CrawlerId ) as TotalResult
FROM CrawlerScheduler cs
如何通过将neo4j节点与
设置 CREATE INDEX index_2384723 IF NOT EXISTS FOR (n:Movie) ON (n.title) 跑 call db.indexes() yield name, labelsOrTypes
where labelsOrTypes = ["Movie"]
DROP INDEX name IF EXISTS
RETURN name 期望值 要删除的名为index_2384723的索引和返回值: index_2384723 现实 Invalid input 'R': expected 'e/E' (lin
我希望从数据库中的同一行获取两个值,但我的查询读取与表匹配的所有密码。
示例:
用户名: Max,密码: 1234登录: Alex,密码: 5678
否则,我试图登录Max的帐户,输入密码: 5678,并登录到它没有问题。这也是亚历克斯的情况,我知道我的要求很糟糕,我知道这是个问题,我读了所有的密码,但我只需要读麦克斯的密码,我怎么做呢?
查询:
Query name = session.createQuery("SELECT username FROM Accounts WHERE NOT EXISTS ( SELECT username FROM Accounts WHERE us
假设我们有一个实体/节点结构:
Emp: e_id, e_name, e_bossid
在Neo4j中,我有具有这种结构和关系e_bossid->[reports_to]->e_id的节点。我希望在neo4j中构造一个与以下SQL递归查询等价的递归查询:
WITH RECURSIVE Emp_CTE AS (
SELECT e_id, e_name, e_bossid, w_id, w_s1, w_s2, w_s3, w_s4, w_s5
FROM empfull
WHERE e_bossid IS NULL
UNI
我有一个neo4j图形数据库,而且我使用的是,我如何将这个密码查询转换成java代码(这可能吗)?
查询:
START n=node(*)
MATCH p=n-[rels:INCLUDE*]->m
WHERE ALL (rel IN rels
WHERE rel.status='on')
WITH COLLECT(p) AS paths, MAX(length(p)) AS maxLength
RETURN FILTER(path IN paths
WHERE length(path)= maxLength) AS longestPaths
此查询是关于
如何使用Neo4j中的正则表达式过滤垃圾邮件。我对正则表达式知之甚少。在google中发现的电子邮件验证的准则在密码中不起作用。
请提供一些例子,电子邮件验证在密码通过regex。
下面是我在Neo4j中尝试使用apoc过程的方法。
查询:
MATCH (n:Person) where exists(n.person_email)
WITH n
CALL apoc.text.regexGroups(n.person_email,'^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$') YIELD value
R
我在neo4j (社区3.5)中运行了以下查询 MATCH (a:master_node:PERF:Application)-[r1]->(n:master_node:PERF)-[r:AFFINITY]->(m:master_node:PERF)<-[r2]-(a1:master_node:PERF:Application)
WHERE exists(n.latest_ingestion)
AND exists(m.latest_ingestion)
AND id(a) <> id(a1)
MERGE (a)<-[:APP_AFFINITY]-(
当我用编写密码查询时,Neo4j浏览器显示了以下警告:
This feature is deprecated and will be removed in future versions.
Coercion of list to boolean is deprecated. Please consider using `NOT isEmpty(...)` instead.
我的问题是:
MATCH (a)-->(b)
WHERE NOT (b)-->(a)
RETURN a, b
是否有更好的方法来编写此查询,以便在未来的Neo4j版本中工作?
我在我们的Product-nodes上有一个属性-nodes,并且希望执行一个密码查询,这个查询为我提供了使用quantity = 20的所有节点.问题是,在neo4j中,数量是作为字符串存储的。在密码查询中是否有将属性转换为整数的方法?
// This fails to find the required nodes
MATCH (p:Product) WHERE p.quantity = 20;
// This finds them
MATCH (p:Product) WHERE p.quantity = "20";
// I would like to do this
这是我的存储过程中的查询之一,我将从Main表中插入记录到重复表,然后我想删除主表中重复的行不止一个。
这是我的密码
IF EXISTS (SELECT *
FROM [JOB]
WHERE
AND ExternalSourceId = @ExternalSourceId
AND Id <> @Id
AND IsActive = 1)
BEGIN
INSERT INTO DupJob
SELECT *
我基本上希望只返回通过参数输入的一个患者,或者如果参数中没有传递值,则返回所有患者。这有可能是我的密码吗?我一直在犯这个错误:
当子查询未引入EXISTS时,只能在select列表中指定一个表达式。
我的代码:
create proc getOutsideLeadPatients
@patient int = null
as
begin
if @patient is not null
return (select *
from tblpatientdemographics p
wher
如何在NEO4J图形数据库中查找没有我跟踪的所有用户。
尝试了以下查询:
a)
MATCH (u:User {username:'davidp'})
WHERE NOT EXISTS (u)-[:FOLLOWS]->(p) return p;
输出:错误。
b)
MATCH (a:User {username: 'rameshp'}) WHERE not ((a)--()) RETURN a;
产出:无记录
c)
MATCH (a:User) WHERE not ((a)--()) RETURN a;
输出:我没有跟踪的记录很少被遗漏。
我有两个Neo4j Cypher查询,返回相同的结果:
#1完全基于属性过滤方法:
MATCH (dg:DecisionGroup {id: -3})-[rdgd:CONTAINS]->(childD:Vacancy )
WHERE any(id IN childD.`employmentIds` WHERE id IN [16])
AND any(id IN childD.`timeZoneIds` WHERE id IN [11])
AND any(id IN childD.`companyTypeIds` WHERE id IN [1])
AND (c
遵循我的存储过程
ALTER PROCEDURE [dbo].[Proc_userlogin] @userid VARCHAR(50),
@password VARCHAR(50)
AS
DECLARE @ReturnVal VARCHAR(500)
SET nocount ON
IF EXISTS(SELECT username,
password
FROM clients
WHER
我有一个用于登录的存储过程。有三个参数: i)电子邮件ii)密码iii) IsActive。我想检查各个方面,并为每种情况返回一个位值。我试过了:
CREATE PROCEDURE [dbo].[SP_Login]
@Email VARCHAR(100),
@Password VARCHAR(50),
@ReturnValue INT
AS
BEGIN
-- No User
IF NOT EXISTS (Select * From AdminAccount Where Email=@Email and Password = @Password)
我使用的是neo4j图形数据库版本2.1.7。关于数据的简要详细信息:200万个节点具有6种不同类型的节点,500万个关系仅具有5种不同类型的关系,并且大多数是连接的图,但包含一些孤立的子图。
在解析路径时,我在path中得到循环。为了限制这一点,我使用了下面分享的解决方案:
下面是我使用的查询:
MATCH (n:nodeA{key:905728})
MATCH path = n-[:rel1|rel2|rel3|rel4*0..]->(c:nodeA)-[:rel5*0..1]->(b:nodeA)
WHERE ALL(a in nodes(path) where 1=le
运行我的查询时出错:
System.Data.SqlClient.SqlException (0x80131904):子查询返回多个值。当子查询跟随=,!=,<,<=,>,>=或子查询用作表达式时,这是不允许的。
这是我的密码:
UPDATE Trade
SET Reference = (SELECT DISTINCT temp.MainRecordNo
FROM temp
WHERE temp.SubRecordNo = Trade.TradeNo
AN
我想了解一下Spring在neo4j data neo4j框架中的推荐标准。 到目前为止,我用来创建存储库接口,扩展自GraphRepository,NamedIndexRepository 等,并用我的自定义cypher查询编写我的自定义方法@Query 注释如下: @Query(value="START root=node:__types__(className='com.data.EntityNode') WHERE root.id={0} and "
+ "root.type={1} return root")
T
关于neo4j中的密码,我有一个有趣的问题。当我在没有"OR“逻辑的查询中使用筛选器(WHERE)时,使用"OR”逻辑的过滤器比使用“OR”逻辑的筛选器所用的时间要长。
例如:下面的查询向2010至2012年底期间住院的患者提供了急诊,诊断为RSV (初级诊断)和哮喘(二级诊断)。
1-
MATCH (d:Diagnosis)-[r2:SC_EXISTS_IN]->(e:Encounter)<-[r3:PATIENT_HAS]-(p:Person)
WHERE (d.DIAG='49300_diag' OR
d.DIAG='49301_d
当我们用涉及图中每个节点的查询来查询我们的neo4j数据库时,我们得到了以下错误:
neo4j.exceptions.DatabaseError: While loading relationships for Node[(0-9)*]
a Relationship[(0-9)*] was encountered that had startNode: -1 and endNode: -1,
i.e. which had neither start nor end node as the node we're loading relationships for
节点和关系的编号/索
neo4j中的密码查询可以用WHERE子句编写:
match (n:PERSON) where n.name = 'Jonash' return n
但它也可以用括号来写:
match (n:PERSON {name: 'Jonash'}) return n
对于不同的运算符,如contains、>或<,这总是可行的吗?
我正在进行这样的密码身份验证查询。
if exists(select UserID from users where UserName=@UserName and Password=@Password)
select UserID from users where UserName=@UserName and Password=@Password
else
select 0
但对我来说,我似乎在两次查询一个结果,我可以这样做吗?
Select UserID Where Username = @UserName and Password = @Password
当我得到我的结
我对neo4j和密码查询很陌生。我试图生成一个唯一的公共IP列表,并希望在WHERE子句中排除私有IP空间。实现这一目标的最佳途径是什么?我如何适合查询的一个例子是MATCH (A:Account)-[R1:RESOURCE]->(B:DNSRecord) WHERE B.value not in [private IP] RETURN B
我正在使用NodeJs mysql模块,我想在实际查询密码之前检查账号是否存在。 下面是sql语句: let sql = `IF EXISTS (SELECT name FROM users WHERE name='${data.name}') SELECT password FROM users WHERE name='${data.name}'`; 如果没有if语句,一旦添加了IF EXISTS部件,无论我如何调整,总是会得到如下的错误: code: 'ER_PARSE_ERROR',
errno: 1064,
sqlMessage:
我使用neo4j浏览器逐个标签地搜索图形中的节点。我知道节点存在并且节点上的标签是正确的,但是当我在节点上指定标签时,neo4j找不到它。
更具体地说,我在neo4j浏览器中使用了以下密码查询:
match (a:Foo) where a.value = "Bar" return a
(no changes, no records)
但是,具有该值的节点确实存在于该标签中:
match (a) where a.value = "Bar" return labels(a)
["Foo"]
标签上有一个索引,但我不知道这是否相关。
:schema
I
在我的Spring / Neo4j应用程序中,我有一棵很大的Neo4j节点树,现在我想为每个节点实现分层注释。
现在我在想这些评论应该放在哪里.在Neo4j数据库或其他一些外部关系数据库/NoSQL存储中。
为什么我要考虑这个问题--由于我目前对密码的知识有限,我面临着删除沉重的Neo4j节点(与其他节点有许多关系的复合节点)的问题。我现在解决不了这个问题..。因此,引入新的注释节点可能会完全扼杀我的系统。
那么,您认为,我应该尝试修复删除问题或在某些外部数据存储中实现注释吗?
更新
这是我缓慢的删除查询:
MATCH (d:Decision)
WHERE id(d) IN {decisio
我的Neo4j查询不起作用--我也不太明白原因。
match (entry:Entry)
with split("\some space delimited string", " ") as i,
split("\some space delimited string", " ") as j
where (any (x in entry.X.list where x in i) and any(y in entry.Y.list
where y in j) and entry.parent="test_1.csv
我是在neo4j中使用3.0版的新手。我有一个巨大的事务性数据集,我将其转换为一个图形模型。我需要将下面的SQL查询转换成密码。
create table calc_base as
select a.ticket_id ticket_id, b.product_id, b.product_desc,
a.promotion_flag promo_flag,
sum(quantity) sum_units,
sum(sales) sum_sales
from fact a
inner join dimproduct b on a.product
我在Neo4j中执行以下密码查询:
START a = node(4107)
MATCH a-[:AttractionFor]->b-[r:Brother]-c-[:AttractionFor]->d
WHERE (r.distance? <= 25)
RETURN distinct d
这会返回一个also的值,我不需要这个值。我尝试了a<>d和a.name <> b.name,但得到了相同的结果。同样在webadmin中,它不返回任何内容(我在neo4j中使用Everyman的PHP库)。
我使用Neo4j作为数据库来存储与另一个数据库对象相关的投票信息。
我有一个投票对象,它有字段:
type:String,其值为UP或DOWN.argId:String,该值是链接到唯一参数对象的字符串ID值。
我试图使用以下查询查询分配给给定argId的票数:
MATCH (v:Vote) WHERE v.argId = '214' AND v.type='DOWN'
RETURN {downvotes: COUNT(v)} AS votes
UNION
MATCH (v:Vote) WHERE v.argId = '214' AND v.ty
我想将这个“in”和“not in”查询替换为“exists”和“not exists”查询。
SELECT *
FROM A
WHERE A.key1 NOT IN (
SELECT key1
FROM A
GROUP BY key1
HAVING COUNT(key1) = 1
)
UNION
SELECT *
FROM A
WHERE A.key1 IN (
SELECT key1
FROM A
GROUP BY key1
HAVING CO
我正在将MySQL数据库迁移到Neo4j数据库,但无法正确地重写该查询。
MySQL查询:
SELECT ID, Nome, Fotografia
FROM Participante AS pa
INNER JOIN Filme_temAtor_Participante AS fa ON fa.Participante_ID = pa.ID
WHERE fa.Filme_ID = 1
UNION
SELECT ID, Nome, Fotografia
FROM Participante AS pr
INNER JOIN Filme_temRealizad