在SQL中更改日期

时间:2013-07-18 13:33:37

标签: mysql sql date

考虑具有有效日期列的 DateDetails 表格。   我想写一个更新查询,以便:

  if effectiveDate > "first day of the month" then
         ->set it to "first day of the month"

类似的东西:

update DateDetails
set effectiveDate = (start of the month)
where effectiveDate > (start of the month)

effectiveDate的类型为DATE。日,月,年也可以是:2013年1月12日或24日 - 12月 - 2056年 我怎么写这个?

2 个答案:

答案 0 :(得分:1)

update DateDetails
set effectiveDate = DATE_FORMAT(start_date ,'01-%b-%Y')
where effectiveDate > start_date;

将所有日期更改为生效日期的第1天

update DateDetails
set effectiveDate = DATE_FORMAT(effectiveDate ,'01-%b-%Y');

答案 1 :(得分:0)

update DateDetails
set effectiveDate = DATE_FORMAT(effectiveDate, '01-%b-%Y')
where effectiveDate > DATE_FORMAT(effectiveDate, '01-%b-%Y');