/RethinkDB JavaScript

ReQL command: pluck

Command syntax

sequence.pluck([selector1, selector2...]) → stream
array.pluck([selector1, selector2...]) → array
object.pluck([selector1, selector2...]) → object
singleSelection.pluck([selector1, selector2...]) → object


Plucks out one or more attributes from either an object or a sequence of objects (projection).

Example: We just need information about IronMan’s reactor and not the rest of the document.

r.table('marvel').get('IronMan').pluck('reactorState', 'reactorPower').run(conn, callback)

Example: For the hero beauty contest we only care about certain qualities.

r.table('marvel').pluck('beauty', 'muscleTone', 'charm').run(conn, callback)

Example: Pluck can also be used on nested objects.

r.table('marvel').pluck({'abilities' : {'damage' : true, 'mana_cost' : true}, 'weapons' : true}).run(conn, callback)

Example: The nested syntax can quickly become overly verbose so there’s a shorthand for it.

r.table('marvel').pluck({'abilities' : ['damage', 'mana_cost']}, 'weapons').run(conn, callback)

For more information read the nested field documentation.

Related commands

Get more help

Couldn't find what you were looking for?

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.