SQL语句中时间戳比对
   
===10-02更新
    时间戳转时区
    
     CONVERT_TZ(create_time,’+00:00′,’+07:00′)
    
   
    
    
    如果确定时间:
    
     DATE_ADD(end_effect,INTERVAL 8 HOUR)
    
   
    转格式:
    
     DATE_FORMAT(CONVERT_TZ(pay_time,’+00:00′,’+07:00′),’%Y-%m-%d %H:%m:%s’)
    
   
‘%Y-%m-%d %H:%m:%s’ ==> ‘2018-11-02 17:50:50’
今天做到一个需求:
Mysql字段格式是时间戳:查询出来需要转为字符串格式。
select DATE_FORMAT(reg_time,’%Y-%m-%d %H:%i:%s’) AS time from u_user
而且需要做时间戳比对。不多说,直接看代码:
SELECT config_id,config_desc,validate,recharge_count,config_type,
gift_coin,true_coin,recharge_amt,insert_time,start_effect,end_effect
    FROM s_recharge_config WHERE
    
     DATE_ADD(end_effect,INTERVAL 8 HOUR) >= ‘2018-01-16 16:33:16’
    
    AND configType = 2 ORDER BY recharge_amt
   
//查询时。我们服务器时间晚8小时。所以这里使用DATE_ADD函数
    (关于时间戳转为字符串,看了网上好多的说法都是使用FROM_UNIXTIME函数。但是我用的时候 不能实现效果,反而在获取结果时。我用
    
     SimpleDateFormat的format方法出来的就是字符串格式的数据
    
    )
   
Map<String, Object> result = baseDAO.getBySQL(sql, paramMap);
    new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”).format(
    
     result
    
    .get(“start_effect”))
   
 
