Verwenden von Datums- und Zeitdaten

Aktualisiert: 14. April 2006

Die Datentypkategorie Datum und Uhrzeit in SQL Server 2005 besteht aus folgenden Datentypen:

  • datetime
  • smalldatetime

Die Datentypen datetime und smalldatetime ermöglichen Ihnen Folgendes:

  • Eingeben neuer Datums- und Uhrzeitangaben bzw. Ändern vorhandener Datums- und Uhrzeitangaben.
  • Addieren und Subtrahieren von Datumsangaben. Weitere Informationen zur datumsbezogenen Arithmetik finden Sie unter + (Addition) (Transact-SQL) und - (Subtraktion) (Transact-SQL).
  • Suchen nach einem bestimmten Datum oder einer bestimmten Uhrzeit.

Mithilfe der Datums- und Uhrzeitfunktionen des Systems können einige arithmetische Berechnungen für die Datentypen datetime und smalldatetime ausgeführt werden. Weitere Informationen finden Sie unter Funktionen (Transact-SQL).

Im Folgenden sind einige Richtlinien zum Verwenden von Datums- und Zeitdaten aufgeführt:

  • Wenn Sie nach einer genauen Übereinstimmung mit sowohl Datum als auch Uhrzeit suchen möchten, verwenden Sie ein Gleichheitszeichen. SQL Server gibt Datums- und Uhrzeitwerte zurück, die dem Monat, dem Tag, dem Jahr und der Uhrzeit 12:00:00:000 A.M. (Standard) genau entsprechen. Weitere Informationen zur Uhrzeit finden Sie unter Zeitformate.

  • SQL Server wertet datetime-Konstanten zur Laufzeit aus. Eine Datumszeichenfolge, die für die Datumsformate funktioniert, die von einer Sprache erwartet werden, ist eventuell nicht erkennbar, wenn die Abfrage von einer Verbindung mit anderen Einstellungen für Sprache und Datumsformat ausgeführt wird. So funktioniert die folgende Sicht z. B. einwandfrei bei Verbindungen, bei denen die Sprache auf Englisch (USA) festgelegt wurde, jedoch nicht bei Verbindungen, die mithilfe anderer Spracheinstellungen hergestellt wurden:

    CREATE VIEW dbo.USA_Dates AS
    SELECT PurchaseOrderID, TotalDue
    FROM AdventureWorks.Purchasing.PurchaseOrderHeader
    WHERE OrderDate < 'May 1, 2002';
    

    Wenn Sie die datetime-Konstanten in Abfragen verwenden, die von Verbindungen mit unterschiedlichen Spracheinstellungen ausgeführt werden, stellen Sie sicher, dass die Daten von sämtlichen Spracheinstellungen akzeptiert werden. Mit derselben Sorgfalt sollte bei datetime-Konstanten in dauerhaften Objekten, die Teil internationaler Datenbanken sind, vorgegangen werden, beispielsweise bei Tabelleneinschränkungen und WHERE-Klauseln in Sichten. Im folgenden Beispiel wird eine der Methoden erläutert, mit denen sichergestellt werden kann, dass eine datetime-Konstante bei allen Verbindungseinstellungen hinsichtlich Sprache oder Datumsformat gleich interpretiert wird.

    CREATE VIEW dbo.International_Dates AS
    SELECT PurchaseOrderID, TotalDue
    FROM AdventureWorks.Purchasing.PurchaseOrderHeader
    WHERE OrderDate < CONVERT(DATETIME,'20020501',101);
    

    Weitere Informationen finden Sie unter Schreiben internationaler Transact-SQL-Anweisungen.

SQL Server erkennt Datums- und Uhrzeitdaten, die in einfache Anführungszeichen (') eingeschlossen sind, in den folgenden Formaten:

  • Alphabetische Datumsangabe, beispielsweise 'April 15, 1998'
  • Numerische Datumsformate, beispielsweise '4/15/1998'
  • Unstrukturierte Zeichenfolgenformate. So würde '19981207' beispielsweise zu December 7, 1998.

Siehe auch

Andere Ressourcen

Datum und Uhrzeit (Transact-SQL)
Datentypen (Transact-SQL)
CAST und CONVERT (Transact-SQL)

Hilfe und Informationen

Informationsquellen für SQL Server 2005