MySQL实现当前数据表的所有时间都增加或减少指定的时间间隔

来源:互联网 发布:怎么下载ntfs for mac 编辑:程序博客网 时间:2024/05/22 00:05

做了一个简答的小项目,其中遇到了一些数据库的sql使用技巧总结如下:

DATE_ADD() 函数向日期添加指定的时间间隔。

当前表所有数据都往后增加一天时间:

UPDATE ACT_BlockNum SET CreateTime = DATE_ADD(CreateTime, INTERVAL 1 DAY);

当前表所有数据都往前减少一天时间:

UPDATE ACT_BlockNum SET CreateTime = DATE_ADD(CreateTime, INTERVAL -1 DAY);


为了防止数据库查询报空异常,当查询结果返回为整型的时候可以和0进行比较如果为空,则返回一个0给客户,否则返回改查询的结果值,sql如下

  SELECT IFNULL(SUM(Num),0) from DPEvent.ACT_BlockNum where  CreateTime BETWEEN #startTime# AND #endTime#;

MYSQL IFNULL(expr1,expr2)          
如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2。IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。类似的有

isnull(expr)

      如expr为null,那么isnull()的返回值为1,否则返回值为0。 

update语句更新多个字段的值

update @A set c1=b.c1 ,c2=b.c2,c3=b.c3from @A a,@B b where a.id=2 and b.id=6

update  A

  set (A.a2,A.a3) =(select B.b2,b.b3

  from  B

  where B.b1= A.a1 and A.a3=100

  )





0 0
原创粉丝点击