Hem*_*ema 6 java neo4j cypher spring-data-neo4j
我正在使用每个循环对每个值执行单个插入。
我们如何使用密码查询进行批量插入。
这是我的代码...
控制器
@PostMapping("/geohash")
public Set<String> create(@RequestParam String name, @RequestBody LatLng[] latLngs) {
double[][] polygonPoints = convertTo2dArrayOfLatLng(latLngs);
Set<String> geoHashesForPolygon = GeoHashUtils.geoHashesForPolygon(6, polygonPoints);
for (String geohash : geoHashesForPolygon) {
min = Math.min(min, geohash.length());
geohashes = neoService.create(name, geohash);
}
return geoHashesForPolygon;
}
Run Code Online (Sandbox Code Playgroud)
我想将每个插入geoHashesForPolygon为单个节点..
密码查询
@Query("MATCH (c:C) WHERE c.name = {name} CREATE (g: G{name : {geohash}} )<-[:cToG]-(c) RETURN c,g")
public GeohashOfCluster create(@Param("name") String name,@Param("geohash") String geohash);
Run Code Online (Sandbox Code Playgroud)
小智 0
您可以将参数放在列表中并将其展开以创建节点。你的查询就像WITH [{name:'',geohash:''},{name:'',geohash:''},{name:'',geohash:''}] as data UNWIND data as d MATCH (c:C) WHERE c.name = d.name CREATE (g: G{name :d.geohash} )<-[:cToG]-(c) RETURN c,g
希望这可以帮助!
| 归档时间: |
|
| 查看次数: |
1186 次 |
| 最近记录: |