日付が数字の文字列として設定されているデータセットがあります。クエリでは、文字列を日付に変換できますが、プロパティを新しい日付として設定しようとするとエラーが発生し続けます。
現在:a.saleDate = 201805(文字列)欲しい:a.saleDate = 2018-05(日付)
以下を使用して、saleDateを日付としてクエリできます。
MATCH (a:sale)
WITH [tointeger(substring(a.saleDate, 0, 4)),
tointeger(substring(a.saleDate, 4))] AS dateComponents
RETURN date({year: dateComponents[0], month: dateComponents[1]}) AS date
しかし、新しい日付を次のように設定しようとすると、
MATCH (a:sale)
WITH [tointeger(substring(a.saleDate, 0, 4)),
tointeger(substring(a.saleDate, 4))] AS dateComponents
SET date({year: dateComponents[0], month: dateComponents[1]}) = a.saleDate
RETURN a
エラーが発生します:
Neo.ClientError.Statement.SyntaxError:無効な入力 '=':予期される空白、コメント、または '。'
どんな助けでもサイファーへのnubieによって感謝されるでしょう。
私が見ることができる2つの問題があります:
a.saleDate
左側にあるはずですa
が、WITH
後で使おうとするこれを試して...
MATCH (a:sale)
WITH a, [tointeger(substring(a.saleDate, 0, 4)), tointeger(substring(a.saleDate, 4))] AS dateComponents
SET a.saleDate = date({year: dateComponents[0], month: dateComponents[1]})
RETURN a
そうは言っても、なぜこれは...
MATCH (a:sale)
SET a.saleDate = date(a.saleDate)
RETURN a
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加