[12屆 鐵人賽] [Day14] Cypher 語法簡介 Part5 : Detach Delete 很好用 === ###### tags: `iT鐵人賽` `Neo4j` ## 前情提要 好啊,前言寫個女僕咖啡廳,瀏覽量就可以提升五倍 那等等文章尾塞一張女僕圖,我看瀏覽量是不是有機會上看 500  前面幾篇已經把 CRUD 的前三個講完了 那今天就來講講剩下的那個吧 在今天開始之前,如果你手邊剛好有 Neo4j 資料庫 請先執行下面這段語法 ```sql MATCH (n) DETACH DELETE N ``` 不要問,執行就對了  ## REMOVE 還記得上篇有提到 `SET` 可刪除 `Property` 嗎 實際上 `REMOVE` 這個字也可以做到刪除 `SET` 跟 `REMOVE` 基本上就是顛倒的功能 ### `Property` ```sql MATCH (n:Weapon) REMOVE n.Length RETURN n ``` | 原始資料 | 新資料 | |--|--| | |  | ### `Label` ```sql MATCH (n:Weapon) REMOVE n:Test RETURN n ``` | 原始資料 | 新資料 | |--|--| | |  | `REMOVE` 基本跟上一篇沒什麼大的差別_(:3 」∠ )_ `Relationship` 也是一樣的內容 > `注意` : `Relationship` 的 `Type` 是不能做 `SET` 跟 `REMOVE` 的操作的 ## DELETE 剛剛講的都是刪除資料內的資料的功能 (?) 現在來講講如何直接刪了節點跟關係吧 ### `Relationship` ```sql MATCH p=(n:Weapon)-[r]-(n) DELETE r RETURN n ``` | 原始資料 | 新資料 | |--|--| | |  | ### `Node` ```sql MATCH (n:Weapon{Name:"阿姆斯特朗砲"}) DELETE n ``` | 原始資料 | 新資料 | |--|--| | |  | 呃 錯了 (゚∀゚) 在刪除 `Node` 的時候,如果你的 `Node` 上有連接的 `Relationship` 那是不能刪除的,你不需先砍了所有關聯的 `Relationship` 才能刪掉那個 `Node`,或是你可以試試看這個 ```sql MATCH (n:Weapon{Name:"阿姆斯特朗砲"}) DETACH DELETE n ``` | 原始資料 | 新資料 | |--|--| | |  | `DETACH DELETE` 他會把所有跟那個 `Node` 有關的 `Relationship` 也一起刪掉 這樣最一開始提到的那個,就知道是什麼意思了吧 ```sql MATCH (n) DETACH DELETE N ```  > 最後,刪除相關功能建議搭配完整的 `MATCH` 一同使用 --- 要壓線了,怕豹  真.鐵人賽實在是太刺激了 中秋必須積稿,不然真的會爆裂 以下是今天下班時的真實情境  越來越刺激了呢 明天 ***Cypher 語法簡介 Part6 : 一些雜七雜八的功能*** 期待明日的降臨吧 Ciao! 虫合 你說女僕圖 沒有這種事情[。](https://asiansister.com/images/items/63/1910_3_iap1osrWcE3NijY4oKKe.jpg) --- ## 參考資料 [Neo4j Cypher Manual](https://neo4j.com/docs/cypher-manual/current/) (書) [Neo4j 大事典:圖形資料庫&大數據時代](https://www.books.com.tw/products/0010813100) ## 紀錄 撰寫日期:2020/09/28 耗時:約 1.5 小
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up