In SQL Server 2008, wie nur das Jahr aus dem Datum extrahiert wird. In der DB habe ich eine Spalte für das Datum, aus der ich das Jahr extrahieren muss. Gibt es dafür eine Funktion?
Antworten:
year(@date)
year(getdate())
year('20120101')
update table
set column = year(date_column)
whre ....
oder wenn Sie es in einer anderen Tabelle brauchen
update t
set column = year(t1.date_column)
from table_source t1
join table_target t on (join condition)
where ....
select year(current_timestamp)
Sie können die year()
Funktion in SQL verwenden, um das Jahr ab dem angegebenen Datum abzurufen.
Syntax:
YEAR ( date )
Weitere Informationen finden Sie hier
die Jahresfunktionsdosis wie folgt:
select year(date_column) from table_name
---Lalmuni Demos---
create table Users
(
userid int,date_of_birth date
)
insert into Users values(4,'9/10/1991')
select DATEDIFF(year,date_of_birth, getdate()) - (CASE WHEN (DATEADD(year, DATEDIFF(year,date_of_birth, getdate()),date_of_birth)) > getdate() THEN 1 ELSE 0 END) as Years,
MONTH(getdate() - (DATEADD(year, DATEDIFF(year, date_of_birth, getdate()), date_of_birth))) - 1 as Months,
DAY(getdate() - (DATEADD(year, DATEDIFF(year,date_of_birth, getdate()), date_of_birth))) - 1 as Days,
from users
Einfach benutzen
DATEPART AUSWÄHLEN (JAHR, SomeDateColumn)
Es wird der Teil eines DATETIME-Typs zurückgegeben, der der von Ihnen angegebenen Option entspricht. SO DATEPART (YEAR, GETDATE ()) würde das aktuelle Jahr zurückgeben.
Kann andere Zeitformatierer anstelle von JAHR wie passieren