Zum Hauptinhalt springen

Wie bekomme ich das Jahr und den Monat von einem Datum in SQL

Es gibt verschiedene Funktionen und Operatoren in SQL, mit denen Sie diese Aufgabe lösen können. Zum Beispiel eine Funktion EXTRACT ermöglicht das Abrufen bestimmter Elemente aus einem Datum, z. B. Jahr, Monat und Tag.

SELECT EXTRACT(YEAR FROM DateColumn) AS YearFROM TableName;
SELECT EXTRACT(MONTH FROM DateColumn) AS MonthFROM TableName;

Also mit der Funktion EXTRACT und Betreiber AS es ist einfach, das Jahr und den Monat aus einem Datum in SQL abzuleiten.

Wie bekomme ich das Jahr und den Monat von einem Datum in SQL

Wenn Sie mit einer Datenbank arbeiten, müssen Sie häufig Jahr- und Monatsinformationen aus einem Datum abrufen. Es gibt mehrere Möglichkeiten in SQL, das Jahr und den Monat zu erhalten:

    EXTRACT-Funktion: Mit der EXTRACT-Funktion können Sie Teile eines Datums wie Jahr, Monat, Tag usw. extrahieren. Um beispielsweise das Jahr und den Monat von einem Datum abzurufen, können Sie den folgenden Code verwenden:
SELECT EXTRACT(YEAR FROM date_column) AS year,EXTRACT(MONTH FROM date_column) AS monthFROM your_table;
SELECT YEAR(date_column) AS year,MONTH(date_column) AS monthFROM your_table;
SELECT SUBSTRING(date_column, 1, 4) AS year,SUBSTRING(date_column, 6, 2) AS monthFROM your_table;

Wählen Sie je nach Bedarf und dem verwendeten DBMS die geeignete Methode aus. Berücksichtigen Sie die Unterschiede in der Syntax und in der Funktionsfähigkeit.

Teilen eines Datums in Komponenten

Wenn Sie mit Datumsangaben in SQL arbeiten, ist es oft notwendig, das Datum in einzelne Komponenten wie Jahr, Monat, Tag usw. aufzuteilen. Dies kann beispielsweise erforderlich sein, um die Daten nach Jahr oder Monat zu gruppieren.

Es gibt eine Reihe von Funktionen in SQL, mit denen Sie das Datum in Komponenten aufteilen können. Eine solche Funktion ist YEAR() . Es wird verwendet, um ein Jahr aus einem Datum zu extrahieren. Zum Beispiel:

SELECT YEAR(date_column) AS yearFROM table_name;

Daher wird als Ergebnis dieser Abfrage eine Tabelle abgerufen, die die year-Spalte enthält, die die Jahreswerte aus der date_column-Spalte enthält.

Ebenso können Sie die Funktionen MONTH() , DAY() und andere verwenden, um die entsprechenden Komponenten aus dem Datum zu extrahieren. Beispiele:

SELECT MONTH(date_column) AS monthFROM table_name;
SELECT DAY(date_column) AS dayFROM table_name;

Auf diese Weise können Sie das Datum einfach in Komponenten aufteilen und sie in Ihren Abfragen verwenden, um die gewünschten Informationen zu erhalten.

Verwenden der Funktion YEAR(), um das Jahr zu erhalten

Um nur das Jahr aus einem Datum in SQL zu extrahieren, können Sie die Funktion YEAR() verwenden. Mit dieser Funktion können Sie den numerischen Wert des Jahres aus dem angegebenen Datum abrufen. Wenn Sie beispielsweise eine Spalte "Datum" haben und das Jahr aus jeder Zeile extrahieren möchten, können Sie die folgende Abfrage verwenden:

SELECT YEAR(Дата) AS Год FROM Таблица

Hier ist "Datum" der Name der Spalte, die die Daten enthält, und "Tabelle" ist der Name der Tabelle, in der sich diese Spalte befindet.

Das Ergebnis ist die Spalte "Jahr", die nur die Jahre der angegebenen Daten enthält. Wenn beispielsweise die Werte 2020-05-10 und 2019-12-25 in der Spalte "Datum" enthalten sind, lautet das Ergebnis der Abfrage:

Die Funktion YEAR() macht es daher einfach, ein Jahr aus einem Datum in SQL zu extrahieren und es für verschiedene Operationen und Datenanalysen zu verwenden.

Verwenden der MONTH() -Funktion, um einen Monat zu erhalten

Mit der Funktion MONTH() erhalten Sie die Monatsnummer aus dem angegebenen Datum. Wenn Sie beispielsweise nur einen Monat vom Datum ableiten müssen, können Sie diese Funktion verwenden.

Ein Beispiel für die Verwendung der Funktion MONTH() lautet wie folgt:

SELECT MONTH(date_column) AS month FROM table_name;

In diesem Beispiel wählen wir die Spalte date_column aus der Tabelle table_name aus und verwenden die Funktion MONTH(), um die Monatsnummer abzurufen. Das Ergebnis der Abfrageausführung ist die Spalte month, die die Monatsnummer enthält.

Der von der Funktion MONTH() zurückgegebene Wert ist eine ganze Zahl zwischen 1 und 12, wobei 1 für Januar, 2 für Februar usw. steht.

Die Verwendung der MONTH() -Funktion macht es einfach und bequem, einen Monat von einem bestimmten Datum in SQL abzurufen.

Verwenden des EXTRACT() -Operators zum Extrahieren von Jahr und Monat

Mit dem Operator EXTRACT() können Sie Teile eines Datums oder einer Uhrzeit wie Jahr, Monat, Tag usw. aus einem Datumswert extrahieren. Die Syntax des EXTRACT() -Operators lautet wie folgt:

EXTRACT(part FROM date)

dabei ist part der Teil des Datums oder der Uhrzeit, den Sie abrufen möchten (z. B. YEAR oder MONTH), und date ist der Datumswert.

Sie können die folgenden Werte verwenden, um das Jahr und den Monat aus einem Datum abzurufen:

  • YEAR - das Jahr extrahieren
  • MONTH - Extraktion des Monats

Beispiel für die Verwendung des EXTRACT() -Operators zum Abrufen von Jahr und Monat:

SELECT EXTRACT(YEAR FROM date_column) AS year,EXTRACT(MONTH FROM date_column) AS monthFROM table_name;

In diesem Beispiel ist date_column die Spalte, die die Datumswerte enthält, und table_name ist der Name der Tabelle, in der sich die Spalte befindet.

Das Ergebnis der Abfrageausführung sind die Spalten year und month , die die abgerufenen Jahres- bzw. Monatswerte enthalten.

Mit der EXTRACT() -Anweisung können Sie das Jahr und den Monat bequem aus einem Datum in SQL extrahieren, was bei der Analyse von Daten oder beim Erstellen von Berichten nützlich sein kann.

Anwenden einer Datentypkonvertierung zum Abrufen von Jahr und Monat

Wenn wir Daten in einer Datenbank im DATE- oder DATETIME-Format speichern, müssen wir manchmal möglicherweise nur das Jahr oder den Monat aus diesem Datum extrahieren. Dazu können wir die Datentypkonvertierung in SQL verwenden.

Um ein Jahr aus einem Datum zu erhalten, können wir die Funktion YEAR() verwenden, die das Jahr aus einem bestimmten Datum abruft. Wenn wir beispielsweise eine Spalte "date_column" mit Daten haben, ermöglicht die folgende Abfrage, das Jahr aus jedem Datum zu extrahieren:

SELECT YEAR(date_column) AS year FROM table_name;

In ähnlicher Weise können wir die Funktion MONTH() verwenden, um einen Monat aus einem Datum zu erhalten, das einen Monat aus einem bestimmten Datum abruft. Mit der folgenden Abfrage können Sie beispielsweise einen Monat aus jedem Datum abrufen:

SELECT MONTH(date_column) AS month FROM table_name;

Die Anwendung der Datentypkonvertierung in SQL ermöglicht es uns daher, das Jahr und den Monat leicht von einem Datum abzurufen, was für die Datenanalyse, das Erstellen von Berichten und andere Aufgaben nützlich sein kann.

Verwenden von regulären Ausdrücken zum Extrahieren von Jahr und Monat aus einer Zeichenfolge

Um das Jahr und den Monat aus einer Datumszeichenfolge in SQL abzurufen, können wir die Funktion REGEXP_SUBSTR() verwenden. Diese Funktion akzeptiert drei Argumente: die ursprüngliche Zeichenfolge, den regulären Ausdruck und die zu suchende Startposition.

Angenommen, wir haben eine Datumszeichenfolge "2025-12-31". Um das Jahr zu extrahieren, können wir die folgende Abfrage verwenden:

SELECT REGEXP_SUBSTR('2025-12-31', '\d') as Jahr FROM dual;

In diesem Beispiel definiert der reguläre Ausdruck '\d' ein Muster für die Suche nach vier Ziffern hintereinander. Die Funktion REGEXP_SUBSTR() findet das erste Vorkommen dieses Musters in einer Zeichenfolge und gibt es als Ergebnis zurück.

Um einen Monat aus einer Datumszeichenfolge zu extrahieren, können wir in ähnlicher Weise die folgende Abfrage verwenden:

SELECT REGEXP_SUBSTR('2025-12-31', '-(\d)-') as Monat FROM dual;

In diesem Beispiel definiert der reguläre Ausdruck '-(\d)-' ein Muster, um nach zwei Ziffern zu suchen, die zwischen Bindestrichen liegen. Die Funktion REGEXP_SUBSTR() findet das erste Vorkommen dieses Musters in einer Zeichenfolge und gibt es als Ergebnis zurück.

Die Verwendung von regulären Ausdrücken zum Extrahieren von Jahr und Monat aus einer Datumszeichenfolge in SQL ermöglicht es uns, effizient mit Daten zu arbeiten und sie bei weiteren Berechnungen und Datenanalysen zu verwenden.

Verwenden der DATEPART() -Funktion zum Abrufen von Jahr und Monat

Es gibt eine DATEPART() -Funktion in SQL, mit der Sie einzelne Teile eines Datums wie das Jahr und den Monat ausgeben können. Diese Funktion ist sehr nützlich bei der Arbeit mit Datumsangaben, da Sie die benötigten Informationen abrufen kann.

Um das Jahr und den Monat von einem bestimmten Datum abzuleiten, müssen Sie die DATEPART() -Funktion wie folgt verwenden:

SELECT DATEPART(year, date_column) AS year,DATEPART(month, date_column) AS monthFROM table_name;

Hier ist date_column die Spalte in der Tabelle, die die Daten enthält, und table_name ist der Name der Tabelle, aus der die Informationen extrahiert werden sollen.

Wenn Sie beispielsweise eine orders-Tabelle mit der Spalte order_date haben und das Jahr und den Monat für jede Bestellung ausgeben möchten, können Sie die folgende Abfrage verwenden:

SELECT DATEPART(year, order_date) AS year,DATEPART(month, order_date) AS monthFROM orders;

Eine solche Abfrage gibt ein Ergebnis zurück, das die Spalten year und month mit Jahr und Monat für jede Bestellung in der Tabelle orders enthält.

Die Verwendung der Funktion DATEPART() ist sehr praktisch und macht es einfach, die benötigten Informationen aus dem Datum in SQL abzurufen.

Erstellen einer benutzerdefinierten Funktion zum Abrufen von Jahr und Monat aus einem Datum

CREATE FUNCTION GetYearMonth(date DATE, format VARCHAR(7))RETURNS VARCHAR(7)BEGINDECLARE year_month VARCHAR(7);SET year_month = DATE_FORMAT(date, format);RETURN year_month;END
SELECT GetYearMonth('2025-06-15', 'YYYY-MM') AS year_month;

Wenn Sie diese Abfrage ausführen, erhalten Sie folgendes Ergebnis:

+------------+| year_month |+------------+| 2025-06 |+------------+

Glückwunsch! Sie haben erfolgreich eine benutzerdefinierte Funktion erstellt, um das Jahr und den Monat aus dem Datum abzurufen.