Script Db から次のクエリを実行しています。探している日付を「M/d/yyyy」として文字列として保存しています。ルックアップは問題なく、必要なものはすべて返されますが、ソート順は月または年ではありません。
var result = db.query({"p1arSn":e.parameter.search}).sortBy("maintAccomplishedDate", db.DESCENDING);
ご指導ありがとうございます。
Script Db から次のクエリを実行しています。探している日付を「M/d/yyyy」として文字列として保存しています。ルックアップは問題なく、必要なものはすべて返されますが、ソート順は月または年ではありません。
var result = db.query({"p1arSn":e.parameter.search}).sortBy("maintAccomplishedDate", db.DESCENDING);
ご指導ありがとうございます。
sortBy を使用して、文字列として保存された日付を並べ替えることはできません。あなたの選択肢は
オプション 1 はより単純ですが、ページ化されたデータまたは限定されたデータを取得する場合、取得後にソートを行うことは望ましくありません。
オプション 2 は少し難しいです。日付を ScriptDb に保存する場合は、タイムスタンプを保存します (Date にはgetTime()
それを提供する があります)。これらはソート可能な数値です。
次のように、日付文字列の 1 つからタイムスタンプを取得できます。
var timestamp = new Date('3/5/1983').getTime() // 415688400000
次のように元の文字列を取得できます。
var d = new Date(415688400000);
var string = [d.getMonth() + 1, d.getDate(), d.getYear()].join('/');