添加天数到日期列并产生新列?

时间:2014-12-24 09:33:00

标签: mysql sql date select dateadd

我需要在列中添加40天,其中包含d-m-y格式的日期, 并将结果插入新列。例如

 $querydate="UPDATE services SET paymentdue_date=payment_date+30 DAY WHERE my condition ";

我试过

 $querydate="SELECT up_id=".$up_id.",DATE_ADD(payment_date,INTERVAL 30 DAY) AS paymentdue_date FROM     up_services";

payment_date和paymentdue_date的列结构是varchar10 utf8_unicode_ci 有什么建议吗?

3 个答案:

答案 0 :(得分:1)

正确的查询将是

$querydate="SELECT up_id,DATE_ADD(payment_date,INTERVAL 30 DAY) AS paymentdue_date FROM up_services where up_id='$up_id'";

您无法在up_id=".$up_id."之类的选项中添加比较,而是使用

如果您想要更新查询,可以按照 @saharsh shah 回答

进行操作

答案 1 :(得分:0)

试试这个:

UPDATE services 
SET paymentdue_date = DATE_ADD(STR_TO_DATE(payment_date, '%e-%c-%y'), INTERVAL 30 DAY) 
WHERE my condition

答案 2 :(得分:0)

我尝试运行此查询,它对我有用,用新的更新了我的专栏:)

 $querydate="UPDATE up_services SET paymentdue_date=DATE_ADD(payment_date,INTERVAL 30 DAY) WHERE my condition ";