zoukankan      html  css  js  c++  java
  • SQL的基本知识

    1.获取当前时间的前一个小时

    mysql中有个时间数据类型是:TIMESTAMP,

    它储存的格式为:2016-12-29 14:49:48

    JS 可以通过下列函数把时间转换成上面格式进行储存!

    1 function formatDate(now) { 
    2     var year=now.getFullYear(); 
    3     var month=now.getMonth()+1; 
    4     var date=now.getDate(); 
    5     var hour=now.getHours(); 
    6     var minute=now.getMinutes(); 
    7     var second=now.getSeconds(); 
    8     return year+"-"+month+"-"+date+" "+hour+":"+minute+":"+second; 
    9 } 

    现在的问题是:我想获取当前时间的前一个小时,或者前一分钟的TIMESTAMP的数据格式:

    SUBDATE(now(),interval 1 hour)
    

    如果是前一分钟,hour修改成minute, 一天为day,

    我想获取当前时间的后一个小时,那么函数为:ADDDATE

    获取当前时间函数可以是:select now(); 也可以是:

    select current_timestamp;

    获取当天的记录:

    select * from hera.d2_verifycode where type = @type AND 
                        codekey = @codekey and codevalue= @codevalue AND state='valid' AND 
                        Date(send_time) = CURDATE()

    2.DISTINCT语句

      在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。

     3.CURRENT_TIMESTAMP数据结构

     CURRENT_TIMESTAMP,是当前mysql的时间,设置之后,插入数据时,会自动打上当前的时间戳。

     alter table d2_verifycode MODIFY  COLUMN send_time  TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP;

    另外Extra也有这个属性,如:on update CURRENT_TIMESTAMP类型

    4.获取当天的数据

    select * from table_1 where send_time>=CURDATE() and send_time< ADDDATE(CURDATE(),interval 1 day);
    

    5.ifNull的用法

    select ifnull(sum(favor_amt),0)   
    //如果 favor_amt为null,则 used为0,否则为sum(favor_amt)
    used from boss.m5_favor_logs 
    where userid=@userid
  • 相关阅读:
    redis 基本操作-python 使用redis-手机验证接口-发送短信接口
    登录-注册页面修订
    10-29 课堂笔记
    git 协作开发
    git 常规使用
    luffy-city 基础环境搭建(至轮播图前后台交互实现)-步骤目录
    偏移分页-游标(加密)分页-自定义过滤器-第三方过滤器插件(django-filter)
    drf 大总结
    739. Daily Temperatures
    617. Merge Two Binary Trees
  • 原文地址:https://www.cnblogs.com/liuyinlei/p/6233238.html
Copyright © 2011-2022 走看看