Может ли кто-нибудь помочь мне найти 1-е число предыдущего месяца в MySQL? - PullRequest
0 голосов
/ 09 ноября 2011

Я не могу запустить эту функцию, есть ли изменения в этом:

CREATE FUNCTION [GetFirstDateofMonth] 
(@Date as DateTime)  

RETURNS DateTime AS  
BEGIN 

Declare @FirstDate DateTime 
Set @FirstDate = DateAdd(Day, 1, @Date - Day(@Date) + 1) -1

RETURN @FirstDate

END
CREATE  FUNCTION [GetLastDateofMonth] 
(@Date as DateTime)  

RETURNS DateTime AS  
BEGIN 

Declare @LastDate DateTime 
Set @LastDate = DateAdd(Month, 1, @Date - Day(@Date) + 1) -1

RETURN @LastDate

END

1 Ответ

0 голосов
/ 09 ноября 2011

Предполагая, что вы хотите это относительно «сейчас»:

select subdate(adddate(last_day(now()), 1), interval 2 month)

замените now() на все, что вы хотите, если оно относится к какой-либо дате, отличной от «сейчас»

...