当前位置 : 主页 > 网络编程 > PHP >

mysql记录【不断更新】

来源:互联网 收集:自由互联 发布时间:2023-09-06
一、更加灵活的TIMESTAMPDIFF TIMESTAMPDIFF能干什么,可以计算相差天数、小时、分钟和秒,相比于datediff函数要灵活很多。格式是时间小的前,时间大的放在后面。 计算相差天数: select T


一、更加灵活的TIMESTAMPDIFF


TIMESTAMPDIFF能干什么,可以计算相差天数、小时、分钟和秒,相比于datediff函数要灵活很多。格式是时间小的前,时间大的放在后面。


计算相差天数:

select TIMESTAMPDIFF(DAY,'2019-05-20', '2019-05-21'); # 1

计算相差小时数:

select TIMESTAMPDIFF(HOUR, '2015-03-22 07:00:00', '2015-03-22 18:00:00'); # 11

计算相差秒数:

select TIMESTAMPDIFF(SECOND, '2015-03-22 07:00:00', '2015-03-22 7:01:01'); # 61

采用联结表的方式,条件是:1)与之前的日期相差为 1天,2)当天温度比之前一天的温度高

select w1.Id
from Weather as w1, Weather as w2
where TIMESTAMPDIFF(DAY, w2.RecordDate, w1.RecordDate) = 1 AND w1.Temperature > w2.Temperature

二、存储过程注意事项

DELIMITER &&
CREATE PROCEDURE test123()
  BEGIN
    DECLARE id bigint;
    ...........
  END;
DELIMITER ;

需要注意的是DELIMITER &&和DELIMITER ;两句,DELIMITER是分割符的意思,因为MySQL默认以";“为分隔符,如果我们没有声明分割符,那么编译器会把存储过程当成SQL语句进行处理,则存储过程的编译过程会报错,所以要事先用DELIMITER关键字申明当前段分隔符,这样MySQL才会将”;"当做存储过程中的代码,不会执行这些代码,用完了之后要把分隔符还原。


【文章转自 东台网站制作公司 http://www.1234xp.com/dongtai.html 复制请保留原URL】
网友评论