Aerospikeの「IN」演算子と同等のものは何ですか?

Nov 22 2020

私はこの構造とデータによるセットを持っています:

+--------+-----------+---------+
| MODEL  | COLOR     | OWNER   |
+--------+-----------+---------+
|Benz    | Red       | p1      |
+--------+-----------+---------+
|BMW     | Blue      | P2      |
+--------+-----------+---------+
|Ferrari | YelloW    | P3      |
+--------+-----------+---------+
|Audi    | Blue      + P4      |
--------------------------------

今、エアロスパイクで黄色と青の車だけを検索したいと思います。AQLセクションとクエリセクションの両方でエアロスパイクのドキュメントを検索しましたが、何も見つかりません。C#クライアントを使用してaerospikeでこのSQLクエリをシミュレートしたいと思います。

色が(「黄色」、「赤」)の車から*を選択します

回答

1 pgupta Dec 22 2020 at 00:11

Aerospikeは最近、述語フィルターを式に更新しました。現在、クライアントとサーバーは両方をサポートしますが、ある時点で述語フィルターは非推奨になります。式は構文がより直感的で、述語フィルターと同じ機能を実現し、さらに拡張します。C#の場合、次のリンクにコード例が表示されます。https://github.com/aerospike/aerospike-client-csharp/blob/master/Framework/AerospikeDemo/QueryExp.cs

3 pgupta Nov 24 2020 at 05:40

Color IN(Yellow、Red)は、論理的にColor == YellowまたはColor == Redと同じになります。このような式を作成して、クエリをフィルタリングできます。AerospikeでOR、AND、NOTなどの複数の論理演算を使用する次の応答の例を参照してください

C#クライアントについては、CsharpクライアントコードのQueryExp.cs / Framework / AerospikeDemoを参照してください。