<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      cypher語法基礎——最全參考

       

      Neo4j系列導航:
      neo4j及簡單實踐
      cypher語法基礎
      cypher插入語法
      cypher插入語法
      cypher查詢語法
      cypher通用語法
      cypher函數語法
      neo4j索引及調優


      1.簡介

      neo4j官方文檔Cypher是一種聲明式圖數據庫查詢語言,它具有豐富的表現力,能高效地查詢和更新圖數據。具有以下特點:

      • 是一種聲明性模式匹配語言
      • 遵循SQL語法
      • 的語法是非常簡單且人性化、可讀的格式

      2.模式

      使用模式可以描述你期望看到的數據的形狀,當用模式描述一個形狀的時候,Cypher將按照模式來獲取相應的數據。

      模式類型語法含義
      節點(點) (n) 節點使用一對圓括號表示,然后中間含一個名字
      關系(邊) (a)->(b),(a)<-(b),(a)-(b) 使用箭頭來表達兩個節點之間的關系,不關心關系的方向,則箭頭的頭部可以省略
      標簽 (a:User)  
      屬性 (a {name:'v1',sport:'s1'}) 使用鍵值對的映射結構來表達,然后用大括號包起來

      變長模式匹配:

      描述指定長度的關系,描述了三個節點兩個關系:

      (a)-[*2]->(b) # 等價于(a)-->()-->(b)

      長度范圍也可以指定,如最短為3,最長為5:

      (a)-[*3..5]->(b)

      至少三個關系:

      (a)-[*3..]->(b)

      最多5個關系:

      (a)-[*..5]->(b)

      任意長度的關系:

      (a)-[*]->(b)

      圖數據庫與關系型數據庫的類比:

      圖數據關系型數據庫
      點標簽 表名
      點屬性 表字段
      點數據(標簽+屬性鍵值對) 表的一行數據
      相同標簽的點數據 表的所有數據
      關系 常用一列專門來描述(如樹結構)

      3.變量

      當需要引用模式(pattern)或者查詢的某一部分的時候,可以對其進行命名。針對不同部分的這些命名被稱為變量。

      match (n)-[r]->(b) return b # 這里的n和b和r就是變量

      4.關鍵字

      關鍵字大小寫不敏感,變量名大小寫敏感,語法關鍵字主要分為三類:

      4.1.插入關鍵字:(詳細講解)

      關鍵字含義
      create 創建節點或關系
      merge 匹配不到則創建
      set 更新節點的標簽以及節點和關系的屬性
      delete 刪除土元素(節點、關系、路徑)
      remove 刪除圖元素的屬性和標簽
      foreach cypher提供的一種列表遍歷工具,主要用來做增刪改
      create unique 相當于match和create的混合體
      (盡可能地匹配,然后創建未匹配到的創建)
      load csv(import) 用于導入csv文件

      4.2.查詢關鍵字:(詳細講解)

      關鍵字含義
      match 匹配(查詢)已有數據
      optional match 與match類似,只是如果沒有匹配上,則將使用null作為沒有匹配上的模式。類似于SQL中的外連接。
      where 類似SQL中的添加查詢條件
      start START語句僅用于訪問neo4j遺留的索引(節點或者關系的索引)
      aggregation(count、sum、avg…) 聚合函數

      4.3.通用關鍵字:(詳細講解)

      關鍵字含義
      return 返回結果
      order by 排序,緊跟RETURN或者WITH
      limit 限制輸出的行數
      skip 從哪行開始返回結果
      with 向后面的語句傳遞指定結果
      unwind cypher提供的一種列表遍歷工具,結合case等語法可以寫出許多復雜的查詢,尤其是對于路徑查詢的處理
      union/union all 并集(去重/不去重)
      call 執行子查詢并返回結果,版本4.x后支持
      case 根據條件對查詢的結果進行處理

      5.數據類型

      Cypher支持的類型系統分為三類:屬性類型,結構類型和復合類型。

      5.1.屬性類型

      名稱類型
      數值 int,float…
      字符 string
      布爾 Boolean
      空間 Point
      時間 Date,Time,LocalTime,DateTime,LocalDateTime和Duration

      5.2.結構類型

      名稱類型
      節點(點) Node,包含Id**, Labels, Map類型
      關系(邊) Relationship,包含Type, Map, Id類型
      路徑 Path,節點和關系的序列

      5.3.復合類型

      名稱類型
      列表 List
      字典 Map,組成為(key, value)對,key是字符類型,value可以是屬性類型, 結構類型和符合類型

      6.運算符

      neo4j中運算符與關系型數據庫差不多,不過也有不同和需要注意的點

      6.1.比較運算

      =, <>, <, >, <=, >=, is null, is not null

      • 不同類型不能比較,例如點和邊和路徑不能互相比較
      • List比較時,只有所有對應元素都相等列表才相等
      • Map比較時,只有Map的鍵相等且其指向的值也相等時才相等
      • 路徑比較時,只有路徑上所有的點和邊都相等時才相等
      • 和null比較的結果還是null

      6.2.字符串比較運算

      • start with: 匹配前綴
      • ends with: 匹配后綴
      • constant: 字符串包含

      6.3.字符串運算

      • 字符串連接: “+”
      • 正則匹配: “=~”

      6.4.時間運算

      • +, -: Duration與時間實例/Duration
      • *, /:Duration與一個數字

      6.5.List運算

      • List鏈接: +

        return [1,2,3,4,5]+[6,7] as myList

      • List判斷e是否在List中: e in List

        with [2, 3, 4, 5] as numberList unwind numberList AS number with number where number in [2, 3, 8] return number

      • 動態獲取其中元素: []

        with ['Anne', 'John', 'Bill', 'Diane', 'Eve'] as names return names[1..3] as result

      • 列表推導: |看起來和linux管道符號一樣,作用也類似,前面的輸出作為后面的輸入

        列表推導是Cypher基于已有列表創建新的列表,可以和where等語句一起使用
        return [x in [1,2,3] | x^2] //輸出[1.0, 4.0, 9.0]
        return [x in [1,2,3,4,5] where x%2=0 | x^2] //返回[4.0, 16.0]

      6.6.Map運算

      • 靜態獲取Map的value: 使用點運算符

        with {name: 'Anne', age: 25 } as n return n.name

      • 動態獲取Map的value: 使用[]

        with {name: 'Anne', age: 25 } as n return n[$myKey] as result

       
       
       
       
       
      -----------------------------------------------------------------------------------
      posted @ 2025-09-26 11:37  mingruqi  閱讀(56)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产成人亚洲精品狼色在线| 亚洲暴爽av天天爽日日碰| 亚洲va韩国va欧美va| 狠狠色丁香婷婷综合尤物| 波多野结衣在线播放| 亚洲乱色一区二区三区丝袜| 少妇放荡的呻吟干柴烈火动漫| 国产一区二区精品偷系列| 极品人妻少妇一区二区三区| 日本免费人成视频在线观看| 麻豆精品久久久久久久99蜜桃| 亚洲日韩一区二区| 日韩精品福利视频在线观看| 4hu44四虎www在线影院麻豆| 91久久偷偷做嫩草影院免费看 | 综合久久婷婷综合久久| 无线日本视频精品| 亚洲国产精品久久综合网| 国产成人精品亚洲资源| 久久国产精品第一区二区| 色一情一乱一伦麻豆| 在线中文字幕国产一区| 图片区小说区av区| 久久精品国产99久久六动漫| 韩国午夜福利片在线观看| 中文字幕一区二区人妻| 亚洲国产在一区二区三区| 国产伦精品一区二区三区| 无码专区视频精品老司机| 免费无码午夜福利片| 亚洲午夜福利精品无码不卡| 国产成人精品无码播放| 美女内射毛片在线看免费人动物| 亚洲中文欧美在线视频| 国产日韩入口一区二区| 日本午夜精品一区二区三区电影| XXXXXHD亚洲日本HD| 亚洲中文久久久精品无码| 亚洲码国产精品高潮在线| 亚洲国产成人久久精品不卡| AV免费播放一区二区三区|