Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Referenzhandbuch » Verwendung von SQL » SQL-Funktionen » SQL-Funktionen (E-O)

 

HOURS-Funktion [Datum und Uhrzeit]

Eine Funktion, die Stunden berechnet. Spezifische Details finden Sie unter dem Verwendungszweck dieser Funktion.

Syntax 1: Ganzzahl
HOURS( [ DatumZeit-Ausdruck, ] DatumZeit-Ausdruck )
Syntax 2: Zeitstempel
HOURS ( DatumZeit-Ausdruck, Ganzzahlausdruck )
Parameter
  • DatumZeit-Ausdruck   Ein Datums- und Uhrzeitwert

  • Ganzzahlausdruck   Die Anzahl der Stunden, die dem DatumZeit-Ausdruck hinzuzufügen ist. Wenn Ganzzahlausdruck negativ ist, wird die entsprechende Anzahl von Stunden von der Datum/Zeit-Angabe abgezogen. Wenn Sie einen Ganzzahlausdruck angeben, muss der DatumZeit-Ausdruck explizit als DATETIME-Datentyp festgelegt sein.

    Hinweise zur Konvertierung von Datentypen finden Sie unter CAST-Funktion [Datentypkonvertierung].

Rückgabe

INT

TIMESTAMP

Bemerkungen

Die eingegebenen Informationen ändern das Verhalten dieser Funktion:

  • Wenn Sie ein einzelnes Datum eingeben, liefert diese Funktion die Anzahl der Stunden seit 0000-02-29.

    Hinweis

    "0000-02-29" gibt kein tatsächliches Datum wieder. Es ist das vom Algorithmus verwendete Datum.

  • Wenn Sie zwei Zeitstempel eingeben, liefert diese Funktion eine Ganzzahl, die die Anzahl der Stunden zwischen den beiden darstellt. Verwenden Sie stattdessen die DATEDIFF-Funktion.

  • Wenn Sie ein Datum und eine Ganzzahl eingeben, fügt die Funktion die mit der Ganzzahl ausgedrückte Anzahl der Stunden dem angegebenen Zeitstempel hinzu. Verwenden Sie stattdessen die DATEADD-Funktion.

Siehe auch
Standards und Kompatibilität
  • SQL/2003   Erweiterung des Herstellers

Beispiel

Die folgende Anweisung gibt den Wert "4" zurück, womit angezeigt wird, dass der zweite Zeitstempel vier Stunden nach dem ersten liegt. Es wird empfohlen, das zweite Beispiel zu verwenden (DATEDIFF).

SELECT HOURS( '1999-07-13 06:07:12',
   '1999-07-13 10:07:12' );

SELECT DATEDIFF( hour,
   '1999-07-13 06:07:12',
   '1999-07-13 10:07:12' );

Die folgende Anweisung liefert den Wert 17517342.

SELECT HOURS( '1998-07-13 06:07:12' );

Die folgenden Anweisungen geben die DatumZeit 1999-05-13 02:05:07.000 zurück. Es wird empfohlen, dass Sie das zweite Beispiel (DATEADD) verwenden.

SELECT HOURS(
   CAST( '1999-05-12 21:05:07' AS DATETIME ), 5 );

SELECT DATEADD( hour, 5, '1999-05-12 21:05:07' );