Datums-und Zeitfunktionen

Letzte Aktualisierung: 12. Feb. 2025
Datums-und Zeitfunktionen (SPSS Modeler)

CLEM beinhaltet eine Gruppe von Funktionen zum Umgang mit Feldern mit dem Speichertyp "Datum/Uhrzeit" von Zeichenfolgevariablen, die für Datums- und Zeitangaben stehen.

Die verwendeten Formate von Datum und Uhrzeit sind für jeden Ablauf spezifisch und werden in den Ablaufeigenschaften angegeben. Die Datums- und Zeitfunktionen analysieren Datums- und Zeitzeichenfolgen gemäß dem aktuell ausgewählten Format.

Wenn Sie ein Jahr in einem Datum angeben, in dem nur zwei Ziffern verwendet werden (d. h., das Jahrhundert ist nicht angegeben), verwendet SPSS Modeler das Standardjahrhundert, das in den Ablaufeigenschaften angegeben ist.

Tabelle 1. CLEM-Datums- und Zeitfunktionen
Funktion Ergebnis Beschreibung
@TODAY Zeichenfolge Wenn Sie Rollover days/mins in den Flow-Eigenschaften auswählen, gibt diese Funktion das aktuelle Datum als Zeichenfolge im aktuellen Datumsformat aus. Wenn Sie ein zweistelliges Datumsformat verwenden und die Option Rollover days/mins nicht auswählen, gibt diese Funktion $null$ auf dem aktuellen Server aus.
to_time(ITEM) Zeit Konvertiert den Speichertyp des angegebenen Felds in eine Zeit.
to_date(ITEM) Date Konvertiert den Speichertyp des angegebenen Felds in ein Datum.
to_timestamp(ITEM) Zeitmarke Konvertiert den Speichertyp des angegebenen Felds in eine Zeitmarke.
to_datetime(ITEM) Datum/Uhrzeit Konvertiert den Speichertyp des angegebenen Felds in einen Wert vom Typ "Datum", "Zeit" oder "Zeitmarke".
datetime_date(ITEM) Date Gibt den Datumswert für eine Zahl, eine Zeichenfolge oder Zeitmarke zurück. Beachten Sie, dass dies die einzige Funktion ist, mit der Sie eine Zahl (in wenigen Sekunden) wieder in ein Datum zurückkonvertieren können. Wenn ITEM eine Zeichenfolge ist, wird ein Datum erstellt, indem eine Zeichenfolge im aktuellen Datumsformat geparst wird. Das in den Ablaufeigenschaften angegebene Datumsformat muss korrekt sein, damit diese Funktion erfolgreich ausgeführt werden kann. Wenn ITEM eine Zahl ist, wird sie als eine Anzahl von Sekunden seit dem Basisdatum (oder der Epoche) interpretiert. Die Bruchteile eines Tages werden gekürzt. Wenn ITEM eine Zeitmarke ist, wird der Datumsteil der Zeitmarke ausgegeben. Wenn ITEM ein Datum ist, wird es unverändert ausgegeben.
date_before(DATE1, DATE2) Boolesch Ergibt den Wert "Wahr", wenn DATUM1 ein Datum oder eine Zeitmarke darstellt, das/der vor dem durch DATUM2 dargestellten Datum liegt. Andernfalls ergibt die Funktion den Wert 0.
date_days_difference(DATE1, DATE2) Ganze Zahl Ergibt die Zeit in Tagen (als ganze Zahl), die zwischen dem durch DATUM1 und dem durch DATUM2 angegebenen Datum bzw. der Zeitmarke liegt. Wenn DATUM2 vor DATUM1 liegt, ergibt diese Funktion eine negative Zahl.
date_in_days(DATE) Ganze Zahl Ergibt die Zeit in Tagen (als ganze Zahl), die zwischen dem Basisdatum und dem durch DATUM angegebenen Datum oder der Zeitmarke liegt. Wenn DATUM vor dem Basisdatum liegt, ergibt diese Funktion eine negative Zahl. Es muss ein gültiges Datum angegeben werden, damit die Berechnung ordnungsgemäß erfolgen kann. Beispielsweise sollten Sie nicht den 29. Februar 2001 als Datum angeben. Da 2001 kein Schaltjahr ist, existiert dieses Datum nicht.
date_in_months(DATE) Real Ergibt die Zeit in Monaten (als reelle Zahl), die zwischen dem Basisdatum und dem durch DATUM angegebenen Datum oder der Zeitmarke liegt. Dies ist ein Näherungswert, der auf einem Monat mit 30.4375 Tagen beruht. Wenn DATUM vor dem Basisdatum liegt, ergibt diese Funktion eine negative Zahl. Es muss ein gültiges Datum angegeben werden, damit die Berechnung ordnungsgemäß erfolgen kann. Beispielsweise sollten Sie nicht den 29. Februar 2001 als Datum angeben. Da 2001 kein Schaltjahr ist, existiert dieses Datum nicht.
date_in_weeks(DATE) Real Ergibt die Zeit in Wochen (als reelle Zahl), die zwischen dem Basisdatum und dem durch DATUM angegebenen Datum oder der Zeitmarke liegt. Der Wert basiert auf einer Woche mit 7,0 Tagen. Wenn DATUM vor dem Basisdatum liegt, ergibt diese Funktion eine negative Zahl. Es muss ein gültiges Datum angegeben werden, damit die Berechnung ordnungsgemäß erfolgen kann. Beispielsweise sollten Sie nicht den 29. Februar 2001 als Datum angeben. Da 2001 kein Schaltjahr ist, existiert dieses Datum nicht.
date_in_years(DATE) Real Ergibt die Zeit in Jahren (als reelle Zahl), die zwischen dem Basisdatum und dem durch DATUM angegebenen Datum oder der Zeitmarke liegt. Dies ist ein Näherungswert, der auf einem Jahr mit 365.25 Tagen beruht. Wenn DATUM vor dem Basisdatum liegt, ergibt diese Funktion eine negative Zahl. Es muss ein gültiges Datum angegeben werden, damit die Berechnung ordnungsgemäß erfolgen kann. Beispielsweise sollten Sie nicht den 29. Februar 2001 als Datum angeben. Da 2001 kein Schaltjahr ist, existiert dieses Datum nicht.
date_months_difference (DATE1, DATE2) Real Ergibt die Zeit in Monaten (als reelle Zahl), die zwischen dem durch DATUM1 und dem durch DATUM2 angegebenen Datum bzw. der Zeitmarke liegt. Dies ist ein Näherungswert, der auf einem Monat mit 30.4375 Tagen beruht. Wenn DATUM2 vor DATUM1 liegt, ergibt diese Funktion eine negative Zahl.
datetime_date(YEAR, MONTH, DAY) Date Erstellt einen Datumswert für die angegeben Wert für JAHR, MONAT und TAG. Bei den Argumenten muss es sich um ganze Zahlen handeln.
datetime_day(DATE) Ganze Zahl Ergibt den Tag im Monat ausgehend von einem angegebenen DATUM oder einer Zeitmarke. Das Ergebnis ist eine ganze Zahl im Bereich von 1 bis 31.
datetime_day_name(DAY) Zeichenfolge Ergibt den vollständigen Namen für den angegeben TAG. Das Argument muss eine ganze Zahl im Bereich von 1 (Sonntag) bis 7 (Samstag) sein.
datetime_hour(TIME) Ganze Zahl Ergibt die Stunde aus einer ZEIT oder einer Zeitmarke. Das Ergebnis ist eine ganze Zahl im Bereich von 0 bis 23.
datetime_in_seconds(TIME) Real Ergibt den in ZEIT gespeicherten Sekundenabschnitt.
datetime_in_seconds(DATE), datetime_in_seconds(DATETIME) Real Ergibt die aus der Differenz zwischen dem aktuellen DATUM oder DATUM/UHRZEIT und dem Basisdatum (1900-01-01) berechneten Gesamtwert (umgewandelt in Sekunden).
datetime_minute(TIME) Ganze Zahl Ergibt die Minute aus einer ZEIT oder einer Zeitmarke. Das Ergebnis ist eine ganze Zahl im Bereich von 0 bis 59.
datetime_month(DATE) Ganze Zahl Ergibt den Monat aus einem DATUM oder einer Zeitmarke. Das Ergebnis ist eine ganze Zahl im Bereich von 1 bis 12.
datetime_month_name (MONTH) Zeichenfolge Ergibt den vollständigen Namen für den angegeben MONAT. Das Argument muss eine ganze Zahl im Bereich von 1 bis 12 sein.
datetime_now Zeitmarke Ergibt die aktuelle Zeit als Zeitmarke.
datetime_second(TIME) Ganze Zahl Ergibt die Sekunde aus einer ZEIT oder einer Zeitmarke. Das Ergebnis ist eine ganze Zahl im Bereich von 0 bis 59.
datetime_day_short_name (DAY) Zeichenfolge Ergibt den abgekürzten Namen für den angegeben TAG. Das Argument muss eine ganze Zahl im Bereich von 1 (Sonntag) bis 7 (Samstag) sein.
datetime_month_short_name (MONTH) Zeichenfolge Ergibt den abgekürzten Namen für den angegeben MONAT. Das Argument muss eine ganze Zahl im Bereich von 1 bis 12 sein.
datetime_time(HOUR, MINUTE, SECOND) Zeit Ergibt den Zeitwert für die angegebene STUNDE, MINUTE und SEKUNDE. Bei den Argumenten muss es sich um ganze Zahlen handeln.
datetime_time(ITEM) Zeit Ergibt den Zeitwert für das angegebene ELEMENT.
datetime_timestamp(YEAR, MONTH, DAY, HOUR, MINUTE, SECOND) Zeitmarke Ergibt den Zeitmarkenwert für die angegeben Wert für JAHR, MONAT, TAG, STUNDE, MINUTE und SEKUNDE.
datetime_timestamp(DATE, TIME) Zeitmarke Ergibt den Zeitmarkenwert für das angegebene DATUM und die angegebene ZEIT.
datetime_timestamp (NUMBER) Zeitmarke Ergibt den Zeitmarkenwert für die angegebene Anzahl von Sekunden.
datetime_weekday(DATE) Ganze Zahl Ergibt den Tag in der Woche t ausgehend von einem angegebenen DATUM oder einer Zeitmarke.
datetime_year(DATE) Ganze Zahl Ergibt das Jahr aus einem DATUM oder einer Zeitmarke. Das Ergebnis ist eine ganze Zahl wie 2021.
date_weeks_difference (DATE1, DATE2) Real Ergibt die Zeit in Wochen (als reelle Zahl), die zwischen dem durch DATUM1 und dem durch DATUM2 angegebenen Datum bzw. der Zeitmarke liegt. Der Wert basiert auf einer Woche mit 7,0 Tagen. Wenn DATUM2 vor DATUM1 liegt, ergibt diese Funktion eine negative Zahl.
date_years_difference (DATE1, DATE2) Real Ergibt die Zeit in Jahren (als reelle Zahl), die zwischen dem durch DATUM1 und dem durch DATUM2 angegebenen Datum bzw. der Zeitmarke liegt. Dies ist ein Näherungswert, der auf einem Jahr mit 365.25 Tagen beruht. Wenn DATUM2 vor DATUM1 liegt, ergibt diese Funktion eine negative Zahl.
date_from_ywd(YEAR, WEEK, DAY) Ganze Zahl Wandelt das Jahr, die Woche im Jahr und den Tag in der Woche in ein Datum im Standard ISO 8601 um.
date_iso_day(DATE) Ganze Zahl Ergibt den Tag in der Woche aus dem Datum im Standard ISO 8601.
date_iso_week(DATE) Ganze Zahl Ergibt die Woche des Jahres aus dem Datum im Standard ISO 8601.
date_iso_year(DATE) Ganze Zahl Ergibt das Jahr aus dem Datum im Standard ISO 8601.
time_before(TIME1, TIME2) Boolesch Ergibt den Wert "Wahr", wenn ZEIT1 eine Uhrzeit oder eine Zeitmarke darstellt, die/der vor der durch ZEIT2 dargestellten Zeit liegt. Andernfalls ergibt die Funktion den Wert 0.
time_hours_difference (TIME1, TIME2) Real Ergibt den Zeitunterschied in Stunden (als reelle Zahl) zwischen den durch ZEIT1 und ZEIT2 angegebenen Uhrzeiten oder Zeitmarken. Wenn Sie Rollover days/mins in den Ablaufeigenschaften auswählen, wird ein höherer Wert von TIME1 verwendet, um auf den vorherigen Tag zu verweisen. Wenn Sie die Rollover-Option nicht auswählen, führt ein höherer Wert von TIME1 dazu, dass der ausgegebene Wert negativ ist.
time_in_hours(TIME) Real Ergibt die durch ZEIT angegebene Zeit in Stunden als reelle Zahl. So wird beispielsweise beim Zeitformat HHMM der Ausdruck time_in_hours('0130') als 1,5 ausgewertet. ZEIT kann für eine Uhrzeit oder eine Zeitmarke stehen.
time_in_mins(TIME) Real Ergibt die durch ZEIT angegebene Zeit in Minuten als reelle Zahl. ZEIT kann für eine Uhrzeit oder eine Zeitmarke stehen.
time_in_secs(TIME) Ganze Zahl Ergibt die durch ZEIT angegebene Zeit in Sekunden als ganze Zahl. ZEIT kann für eine Uhrzeit oder eine Zeitmarke stehen.
time_mins_difference(TIME1, TIME2) Real Ergibt den Zeitunterschied in Minuten (als reelle Zahl) zwischen den durch ZEIT1 und ZEIT2 angegebenen Uhrzeiten oder Zeitmarken. Wenn Sie Rollover days/mins in den Ablaufeigenschaften auswählen, wird ein höherer Wert von TIME1 verwendet, um auf den vorherigen Tag (oder die vorherige Stunde, wenn nur Minuten und Sekunden im aktuellen Format angegeben sind) zu verweisen. Wenn Sie die Rollover-Option nicht auswählen, führt ein höherer Wert von TIME1 dazu, dass der ausgegebene Wert negativ ist.
time_secs_difference(TIME1, TIME2) Ganze Zahl Ergibt den Zeitunterschied in Sekunden (als ganze Zahl) zwischen den durch ZEIT1 und ZEIT2 angegebenen Uhrzeiten oder Zeitmarken. Wenn Sie Rollover days/mins in den Ablaufeigenschaften auswählen, wird ein höherer Wert von TIME1 verwendet, um auf den vorherigen Tag (oder die vorherige Stunde, wenn nur Minuten und Sekunden im aktuellen Format angegeben sind) zu verweisen. Wenn Sie die Rollover-Option nicht auswählen, führt ein höherer Wert von TIME1 dazu, dass der ausgegebene Wert negativ ist.