![]() |
ISO 8601 Datum vergleichen
Wie vergleicht man am besten ein iso8601 Datum?
TDateTimes konvertiere ich vorher immer in Timestamps und habe dann was zum Rechnen. |
AW: ISO 8601 Datum vergleichen
Warum nicht, wenn es funktioniert?
|
AW: ISO 8601 Datum vergleichen
Das ist ein Int64. Ich wüsste ohnehin nicht wie man es sonst vergleichen sollte. Ich dachte nur es gibt eine vernünftigere Methode dafür.
|
AW: ISO 8601 Datum vergleichen
Wenn die Werte als String vorliegen, warum dann nicht direkt die Strings vergleichen? Das Format ist ja extra so aufgebaut, daß es dies ermöglicht. Das ist auf jeden Fall schneller als eine vorherige Konvertierung.
|
AW: ISO 8601 Datum vergleichen
Es liegt als Int64 vor. Der Vergleich soll keinen allgemeinen Unterschied festellen, sondern welcher der beiden Werte älter oder neuer ist.
|
AW: ISO 8601 Datum vergleichen
Wenn es als Int64 vorliegt, wie ist dann die binäre Darstellung des Datums? ISO 8601 beschreibt ein reines Textformat.
|
AW: ISO 8601 Datum vergleichen
Von binären Darstellungen habe ich keine Ahnung. Ich verstehe nicht einmal die Frage.
Wenn man das nicht als Int64 darstellen darf, wie soll man dann prüfen welcher davon neuer ist? |
AW: ISO 8601 Datum vergleichen
Warum konvertierst du TDateTime in Timestamp? Man kann auch TDateTime vergleichen, die korrekte Art und Weise ist mit DateUtils.
|
AW: ISO 8601 Datum vergleichen
Direkte Vergleiche der gespeicherten Ausgangswerte ist zu 99.9999999% immer schneller, als eine vorherige Umrechnung, bei jedem einzelnen Wert/Vergleich.
Ausnahme bei Anzahl an Vergleiche, welche die Anzahl der Werte stark überschreite. (alles mit allem Vergleichen, Sortieren usw.) Aus diesem Grund legen Datenbanken auch einen Index an, in dem die Daten in einem optimaleren Format vorliegen. z.B. einen Wert in einer Liste suchen und überall erst umrechnen zu müssen ist natürlich langsamer, als wenn die Daten bereits in einem "optimalen" Format vorliegen, bzw, vorher umgewandelt wurden. (z.B. Integer bzw. Int64 anstatt vieler langer Strings ... ein orinaler Vergleich gegenüber dem Vergleich vieler kleiner Chars pro Wert) |
AW: ISO 8601 Datum vergleichen
Zitat:
Weiterhin ist das ISO 8601 Format bewusst so aufgebaut, daß ein direkter Stringvergleich möglich ist. Vielleicht wäre jetzt ein guter Zeitpunkt deinen bisherigen Code zu zeigen? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz