PDA

View Full Version : Lấy ngày đầu năm của một DATETIME



man_quangnam
11-03-2008, 17:17
Tình hình là em có một biến @MyDate. Để tính luỹ kế thì phải xác định được ngày đầu năm tương ứng với @MyDate.

Ví dụ
@MyDate = 02/03/2008 thì trả về 01/01/2008
@MyDate = 02/04/2007 thì trả về 01/01/2007

AI giúp em với. Đừng bảo em phải code bằng ngôn ngữ khác nhé. Phải dùng được trong Store Procedure mới được. Cám ơn nhiều!

KingsCat
14-03-2008, 16:58
SET @FirstDate='01-JAN-' + CAST((YEAR(@MyDate)) AS VARCHAR)

man_quangnam
15-03-2008, 16:15
Làm nguyên như thế sẽ bị lỗi.
Sửa lại thành : SET @FirstDate=SELECT '01-JAN-' + CAST((YEAR(@MyDate)) AS VARCHAR)

Cám ơn bạn nhiều !

trungtd_vtic
18-03-2008, 10:49
cách này được không, bạn viết thành hàm rồi gọi ra. cái này gọi đâu chẳng được. Trong SP, QA, v.vvvv
Create function dbo.firstdate(@Mydate datetime) returns datetime
as
begin
declare @rval datetime
set @rval='1/1/' + year(@mydate)
return @rval
end