Vấn đề:
Bạn muốn lấy năm từ trường ngày tháng trong cơ sở dữ liệu SQL Server.
Ví dụ:
Cơ sở dữ liệu của chúng tôi có một bảng có tên Children
với dữ liệu trong các cột Id
, FirstName
, LastName
và BirthDate
.
Id | FirstName | LastName | Ngày sinh |
---|---|---|---|
1 | Jane | Smith | 2018-06-20 |
2 | Gary | Màu nâu | 2010-02-02 |
3 | Lora | Adams | 2014-11-05 |
Hãy lấy năm từ ngày sinh của mỗi đứa trẻ.
Giải pháp:
Chúng tôi sẽ sử dụng YEAR()
hàm số. Đây là truy vấn bạn sẽ viết:
SELECT FirstName, LastName, YEAR(BirthDate) AS BirthYear FROM Children;
Đây là kết quả của truy vấn:
FirstName | LastName | Năm sinh |
---|---|---|
Jane | Smith | 2018 |
Gary | Màu nâu | 2010 |
Lora | Adams | 2014 |
Thảo luận:
Sử dụng YEAR()
của SQL Server nếu bạn muốn lấy phần năm từ một ngày. Hàm này chỉ nhận một đối số - một ngày tháng, trong một trong các kiểu dữ liệu ngày và giờ hoặc ngày tháng. (Trong ví dụ của chúng tôi, cột BirthDate
là một ngày loại dữ liệu). Đối số có thể là một tên cột hoặc một biểu thức. (Trong ví dụ của chúng tôi, đối số là BirthDate
cột.)
YEAR()
hàm trả về một số nguyên. Dành cho Jane Smith , nó trả về số nguyên 2018 từ ngày sinh '2018-06-20'
.