2016-05-31 3 views
0

Я импортирую данные из файла в Rethinkdb.Создание точек из существующих данных в Rethinkdb

данных выглядит следующим образом (это поддельные данные)

[ 
    { 
    "firstName": "Keeley", 
    "lastName": "Leannon", 
    "createdAt": "2016-05-10T19:55:38.823Z", 
    "location": { 
     "lat": 52, 
     "lng": 0.07687, 
     "lastUpdated": "2016-05-16T03:21:25.082Z" 
    }, 
    "company": "Breitenberg and Sons", 
    "jobTitle": "Dynamic Group Facilitator", 
    "email": "[email protected]" 
    }, 
    { 
    "firstName": "Henri", 
    "lastName": "Ernser", 
    "createdAt": "2016-05-21T11:51:54.581Z", 
    "location": { 
     "lat": 52, 
     "lng": -0.74853, 
     "lastUpdated": "2016-04-28T21:15:26.786Z" 
    }, 
    "company": "Gleason, Dickens and Cassin", 
    "jobTitle": "Lead Data Consultant", 
    "email": "[email protected]" 
    } 
] 

Теперь я хочу, чтобы создать point объекты из location.lat полей location.lng &, а затем удалить Lat и LNG поля , так что поле место теперь будет выглядеть следующим образом

"location": { 
      "point": -0.74853, 52, 
      "lastUpdated": "2016-04-28T21:15:26.786Z" 
     }, 

Я импортирующей из файла, и, насколько я могу сказать, в документации, нет никакого способа, чтобы импортировать непосредственно из файла с помощью ReQL, так я должен был бы сделать импорт из командной строки и t купите каждый документ после импорта.

Любые указатели на то, как это сделать?

ответ

0

Эта команда достаточно близка к тому, что мне было нужно

r.db('test').table('people').update(function(item) { 
    return { 
    location: { 
     geometry : r.point(
     item("location")("lng"), 
     item("location")("lat")), 
     lastUpdated : item("location")("lastUpdated"), 
     lat: r.literal(), 
     lng: r.literal() 
    } 
    } 

})

, который приводит объект местонахождения как

"location": { 
     "geometry": { 
      "$reql_type$": "GEOMETRY" , 
      "coordinates": [-0.94645 ,51] , 
      "type": "Point" 
     } , 
     "lastUpdated": "2016-05-04T01:38:48.786Z" 
    } 
Смежные вопросы