Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
930 views
in Technique[技术] by (71.8m points)

graphql - Neo4j/Cypher return the first element of the list of node labels as a property

I'm attempting to return a single node label as a property in a cypher query. I'm using the GRANDstack, so I'd like GraphQL to ask Neo4j for a list of nodes, each with the label as a property:

query GetPushNotificationsByUser($userId: ID!) {
    GetPushNotificationsByUser(userId: $userId) {
      id,
      label,
      title,
      message,
      status,
      externalUrl,
      createdAt {
        formatted
      }
    }
  }

I'm attempting to use the head() and labels() functions for this, but so far unsuccessfully:

MATCH (u:User {id: $userId})<-[:NOTIFIES]-(pn:PushNotification {status: 'SENT'})
WITH head(labels(pn)) as label, pn
RETURN pn
ORDER BY pn.createdAt DESC

AND

MATCH (u:User {id: $userId})<-[:NOTIFIES]-(pn:PushNotification {status: 'SENT'})
RETURN pn, head(labels(pn)) as label
ORDER BY pn.createdAt DESC

both return the "PushNotifications", but sans the label property. Does anyone know how I can achieve this?

question from:https://stackoverflow.com/questions/65922459/neo4j-cypher-return-the-first-element-of-the-list-of-node-labels-as-a-property

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...