# Load multiple CSV rows into same node

**URL:** <https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956>\
**Category:** Cypher\
**Tags:** cypher, import, neo4j-desktop\
**Created:** [November 4, 2021, 1:09pm UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956 "2021-11-04T13:09:41Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![steve5](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/steve5/32/3933_2.png) [@steve5](https://community.neo4j.com/u/steve5)\
**Post date:** [November 4, 2021, 1:09pm UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956/1 "2021-11-04T13:09:41Z")

</div>

I have the following CSV:

```auto
id attr value
1 abc 1.1    
1 eww -9.4  
1 ssv likj
2 we2 1 
2 eww 900  
3 kuku -91  
3 lulu 383
3 ssv bubu 

```

I would like to create 3 nodes that consists of:

```auto
Node 1: {id:1, abc: 1.1, eww: -9.4, ssv: "likj"}
Node 2: {id:2, we2: 1, eww: 900}
Node 3: {id:3, kuku: -91, lulu: 383, ssv: "bubu"}

```

How can I build it in Neo4j cypher?

---

<div class="post-metadata">

**Author:** ![Cobra](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/cobra/32/35243_2.png) [@Cobra](https://community.neo4j.com/u/Cobra)\
**Post date:** [November 4, 2021, 1:57pm UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956/2 "2021-11-04T13:57:13Z")

</div>

Hello @steve5 🙂

This should work with [apoc.load.csv()](https://neo4j.com/labs/apoc/4.3/import/load-csv/) function:

```auto
CALL apoc.load.csv('file:///data.csv')
YIELD map
MERGE (n:Node {id: map.id})
SET n += map

```

Regards,  
Cobra

---

<div class="post-metadata">

**Author:** ![Cobra](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/cobra/32/35243_2.png) [@Cobra](https://community.neo4j.com/u/Cobra)\
**Post date:** [November 8, 2021, 7:32am UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956/4 "2021-11-08T07:32:52Z")

</div>

Because you have to use APOC to laod your CSV. I used the `apoc.load.csv()` function and not `LOAD CSV`.

---

<div class="post-metadata">

**Author:** ![steve5](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/steve5/32/3933_2.png) [@steve5](https://community.neo4j.com/u/steve5)\
**Post date:** [November 8, 2021, 7:44am UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956/5 "2021-11-08T07:44:18Z")

</div>

But how can I load it using my URL? @Cobra

---

<div class="post-metadata">

**Author:** ![Cobra](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/cobra/32/35243_2.png) [@Cobra](https://community.neo4j.com/u/Cobra)\
**Post date:** [November 8, 2021, 8:06am UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956/6 "2021-11-08T08:06:57Z")

</div>

This should work:

```auto
WITH "https://drive.google.com/u/0/uc?id=1kcNZm0A2I3k9xN1IfNRITOHEzdnqgG7e&export=download" AS requests_url
CALL apoc.load.csv(requests_url)
YIELD map
MERGE (n:Node {id: map.id})
SET n += map

```

---

<div class="post-metadata">

**Author:** ![Cobra](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/cobra/32/35243_2.png) [@Cobra](https://community.neo4j.com/u/Cobra)\
**Post date:** [November 8, 2021, 8:48am UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956/8 "2021-11-08T08:48:23Z")

</div>

In your CSV, the first column doesn't have a column name so in the `map` object you have a key which has `""` as name and that's why you have this error.

So this query will remove the column with no name then load nodes:

```auto
WITH "https://drive.google.com/u/0/uc?id=1kcNZm0A2I3k9xN1IfNRITOHEzdnqgG7e&export=download" AS requests_url
CALL apoc.load.csv(requests_url)
YIELD map
WITH apoc.map.clean(map, [""], []) AS map
MERGE (n:Node {request_id: map.request_id})
SET n += map

```

---

<div class="post-metadata">

**Author:** ![steve5](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/steve5/32/3933_2.png) [@steve5](https://community.neo4j.com/u/steve5)\
**Post date:** [November 8, 2021, 10:59am UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956/9 "2021-11-08T10:59:44Z")

</div>

@Cobra  
I have changed the URL but still it doesn't work. Please have a look:

```auto
WITH "xxxxxxxxx" AS requests_url
CALL apoc.load.csv(requests_url)
YIELD map
WITH apoc.map.clean(map, [""], []) AS map
MERGE (n:Node {request_id: map.request_id})
SET n += map

```

Please advise.

---

<div class="post-metadata">

**Author:** ![Cobra](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/cobra/32/35243_2.png) [@Cobra](https://community.neo4j.com/u/Cobra)\
**Post date:** [November 8, 2021, 1:21pm UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956/10 "2021-11-08T13:21:11Z")

</div>

The request works but the file is no longer accessible. That's why it's not working.

---

<div class="post-metadata">

**Author:** ![Cobra](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/cobra/32/35243_2.png) [@Cobra](https://community.neo4j.com/u/Cobra)\
**Post date:** [November 8, 2021, 1:36pm UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956/12 "2021-11-08T13:36:19Z")

</div>

I'm sorry, I will repeat myself. Your link is not working that's why the query doesn't work with your link but the query is good. So in order to work, you need to make sure that your file is externally accessible.

 ![image](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/a/9/a964fc70dc3bae8d8f8cd97ae553828389b9662e.png)

---

<div class="post-metadata">

**Author:** ![steve5](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/steve5/32/3933_2.png) [@steve5](https://community.neo4j.com/u/steve5)\
**Post date:** [November 8, 2021, 1:48pm UTC](https://community.neo4j.com/t/load-multiple-csv-rows-into-same-node/46956/13 "2021-11-08T13:48:24Z")

</div>

Weird, but it worked, thanks, your solution is working. Thanks.
