2016-05-19 7 views
0

コード:グループとインデックス付きの最大を使用して一緒に

r.db('dealdb').table('messages') 
    .filter({ dealId : request.dealId }) 
    .group('conversationId') 
    .max({ index: 'sendDate' }) 
    .ungroup() 
    .getField('reduction') 

エラー:

Expected type TABLE but found SEQUENCE 

だから私の理解がmaxがテーブルを期待しながら、groupはシーケンスを返すということです。

r.db('dealdb').table('messages') 
    .filter({ dealId : request.dealId }) 
    .group('conversationId') 
    .max('sendDate') 
    .ungroup() 
    .getField('reduction') 

を期待通りにインデックスなし

しかし、maxは非インデックスmaxはないながら、なぜmaxをインデックス化シーケンスでは動作しません動作しますか?そして、どのようにインデックス付きでこれを動作させるのですか?max

答えて

0

maxインデックスはテーブルレベルでのみ動作します。

r.db('dealdb').table('messages').max({ index: 'sendDate' }) 

しかし、我々はストリームまたは選択に呼び出すとき、私たちはもう、インデックスを使用することはできません:それは、これが機能することを意味します。 それはあなたが見るように動作しない理由です。

indexオプションを指定しないと、すべての配列、ストリーム、選択肢、および表にmaxを呼び出すことができます。

関連する問題