Ich habe einen Datensatz mit Altdaten. Wir sortieren nach einem Feld, das nur in neueren Dokumenten vorhanden ist.DocumentDB ORDER BY Entfernen undefined
Wenn ich nach diesem Feld sortiere, werden nur die Objekte zurückgegeben, die diesen Wert haben, selbst wenn sie die WHERE-Klausel bestehen.
Wie erhalten wir eine sortierte Menge an die Spitze für Objekte, die das Feld haben, und alle diejenigen, die nicht am Ende nicht sortiert sind?
Ich habe so etwas wie dies versucht, aber es ist nicht gültig:
SELECT T.id, IS_DEFINED(T.createdDate) ? T.createdDate : "2000-01-01T00:00:00" AS createdDate FROM Themes T
WHERE T.customerId = 43333
AND T.isDefault = false
AND (NOT IS_DEFINED(T.isArchived) OR T.isArchived = false)
ORDER BY createdDate ASC
ich auch versucht:
SELECT T.id FROM Themes T
WHERE T.customerId = 43333
AND T.isDefault = false
AND (NOT IS_DEFINED(T.isArchived) OR T.isArchived = false)
ORDER BY IS_DEFINED(T.createdDate) ? T.createdDate : "2000-01-01T00:00:00" ASC
Können Sie die Client-Seite sortieren? –
Es ist eine Option, aber wird beinhalten, einen großen Teil des Systems neu zu schreiben. –
Können Sie die alten Dokumente mit dem Standardwert für dieses Feld füllen? –