問題タブ [dynamodb-queries]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
4626 参照

node.js - node.jsでAWS dynamoDBアイテムを確認してから更新する方法は?

ここに例があります。Node.JS で AWS Lambda 関数を使用しています。これは DynamoDB のオブジェクトです。

今、私は最初に彼の保存されたスコアが何であるかを確認したいと思います. 彼の現在のスコアが DB に既に存在するスコアよりも大きい場合は、DB を更新します。それ以外の場合はそのままにしておきます。現在、私のコードは毎回更新しています。どのように進めて、どの機能を使用すればよいかわかりません。

彼のスコアが 15 の場合、DB をチェックした後、次のように更新する必要があります。

彼のスコアが 7 の場合、そのままにしておく必要があります。

編集 - 次の問題も解決されました。回避策を見つけました。まだ答えを探しています。なので開けっ放し。

今私の問題は、レコードの更新と作成の両方に同じ関数を使用していることです。それは可能ですか?

新しいユーザーがゲームをプレイすると、彼の電子メール、名前、およびスコアが DB に保存されます。また、既存のユーザーがプレイした場合、スコアが DB のスコアよりも大きい場合は、そのスコアのみが更新されます。

これは私が現在立ち往生しているところです。これらの 2 つの問題を取得するには、1. name は予約済みのキーワードです。put を使用していたときに、どのようにして name を属性として使用できるようになったのだろうか。2. 電子メールはキーの一部であるため、更新できません。

これが私の現在のコードです。

0 投票する
1 に答える
107 参照

nosql - 数値範囲内のdynamodbテーブルのアイテムをクエリする

新しいチャット メッセージのメール通知を実装するためのガイダンスが必要です。メール通知は、過去 1 時間に新しいメッセージがあったすべてのチャットをユーザーに通知します。

これを行うには、時間間隔内にテーブル内のすべてのチャットをクエリする必要があります。最初に頭に浮かんだのは、ハッシュがチャットに未読メッセージがあるかどうかのブール値であり、範囲がそのチャット内の最新メッセージのタイムスタンプである新しいグローバル インデックスを追加することでした。

しかし、ブーリアン ハッシュ キーは非常にアンチ パターンであることがわかりました。ドキュメントを 1 つのパーティションに圧縮するからです。

数値範囲内のテーブル内のすべてのアイテムをクエリできる別のモデルはありますか?