2017-07-21 11 views
0

現在、私たちは複数の情報を含むメッセージキューからデータのストリームを取得しています。その1つは、特定のイベントのタイムスタンプをエポック形式で作成および更新したものです。Neo4jのEPOCH日付の変換

{"ip":"1.1.1.1","name":"abc.com","createtime":1500389719832,"updatetime":1500613413164 },{"ip":"1.1.1.2","name":"xyz.com","createtime":1500389719821,"updatetime":1500613413233} 

現在、私のコードは、キューからメッセージを消費し、すべてのデータを一括してNeo4jにプッシュします。このような行が1000個あります。このデータの各フィールドは、個々のプロパティキーとしてneo4jに格納されます。ユーザーがUIから日付を選択するとき、私のここでの意図は、その特定の日付からのすべての「名前」値を取得し、それらのレコードのみをUIに表示することです。ユーザーはMM/DD/YYYY形式の日付を選択するので、ユーザーが選択した日付とエポック形式の「createtime」を比較するのに最適なオプションは何ですか?私の考えは、 "createtime"をMM/DD/YYYYの読み込み可能な形式に変換し、date部分のみを別のneo4jプロパティ(newCreateTime)として保存することです。誰かがこれにいくつかの光を投げることができますか?

答えて

1

APOC関数apoc.date.formatを使用してnewCreateTimeプロパティを設定できます。例えば

(あなたのデータはInfoラベルを持つノードに格納されたと仮定した場合):

MATCH (i:Info) 
SET i.newCreateTime = apoc.date.format(i.createTime, 'ms', 'MM/dd/yyyy'); 
+0

apoc.date.format不明な関数「apoc.date.format」(ライン1を使用している間、私はエラーを取得しています、列49(オフセット:48)) – user6930

+1

APOC手順を使用するには、[APOCライブラリをインストールする](https://neo4j-contrib.github.io/neo4j-apoc-procedures/#_installation)が必要です。 – cybersam