Следующий документ существует в виде таблицы в RethinkDB:Сумма двух полей в вложенном массиве в RethinkDB
{
u'destination_addresses':[
u'1 Rockefeller Plaza,
New York,
NY 10020,
USA',
u'Meadowlands,
PA 15301,
USA'
],
u'origin_addresses':[
u'1600 Pennsylvania Ave SE,
Washington,
DC 20003,
USA'
],
u'rows':[
{
u'elements':[
{
u'distance':{
u'text':u'288 mi',
u'value':464087
},
u'duration':{
u'text':u'5 hours 2 mins',
u'value':18142
},
u'status':u'OK'
},
{
u'distance':{
u'text':u'266 mi',
u'value':428756
},
u'duration':{
u'text':u'4 hours 6 mins',
u'value':14753
},
u'status':u'OK'
}
]
}
],
u'status':u'OK'
}
Я пытаюсь подвести поле «значение» как для продолжительности и расстояния (так, получив в общей сложности расстояние и продолжительность для данной поездки, что является одним из этих документов из API Google Maps Distance). Я пробовал множество комбинаций pluck (из документации вложенных полей), но не может показаться, что это работает. Я работаю на Python и заранее за помощь.
Предполагается, что это должно быть для ReQL? Если это так, я не могу заставить его работать и не могу найти подобный фрагмент в документации. И, я достаточно хорош на Python, чтобы не знать об руку, если он должен быть отброшен там? – nacc
Это код ReQL. Если вы замените 'document' каким-либо запросом ReQL, получившим ваш документ, то указанный выше запрос предназначен для суммирования расстояний. – mlucy
Gotcha, работал как шарм. Мне пришлось добавить пару вещей, чтобы заставить его работать в интерпретаторе Python, поэтому для всех, кто на это смотрел, я закончил: «r.table (« рассказы »). Get ('689bc43c-c8c3-45df-b38b-e52043a0bab4 ') [' rows ']. concat_map (lambda row: row [' elements ']) [' distance '] [' value ']. sum(). run() 'thanks @mlucy! – nacc