在mysql数据库中关于日期时间字段的处理

在mysql数据库中关于日期时间字段的处理

在开发中,日期时间字段一般有如下几种设计

假设要获取2013-08-15日到2013-08-16日之间的记录

1. 直接使用日期时间类字段

相关sql语句如下

select * from cms_news where

news_add_time between str_to_date("2013-08-15 00:00:00",'%Y-%m-%d %H:%i:%s') and str_to_date("2013-08-16 23:59:59",'%Y-%m-%d %H:%i:%s')

order by news_add_time desc limit 1000

2. 使用long型的数字表示时间

select * from cms_news where

news_add_time>=1376496000000 and  news_add_time<=1376668799000

order by news_add_time desc limit 1000

package com.yanek.test;

public class DateTool {

	/**
* @param args
*/
public static void main(String[] args) { String startDate="2013-08-15";
String enddate="2013-08-16"; String s1="2013-08-27 00:00:00";
String s2="2013-08-27 23:59:59";
String sql = "select * from cms_news where news_time between str_to_date(\""+s1+"\",'%Y-%m-%d %H:%i:%s') and str_to_date(\""+s2+"\",'%Y-%m-%d %H:%i:%s') order by news_time asc limit 1000"; long st1=1376496000000l;
long st2=1376668799000l;
String sql1 = "SELECT * FROM cms_news WHERE news_time >=" + st1 + " and lastmodified<="+st2+" ORDER BY news_time ASC LIMIT 100"; } }
上一篇:在用mybatis向MySQL数据库中插入时间时报错:Incorrect datetime value: '' for column '' at row 1


下一篇:关于apicloud ios自定义模块引用第三方framework not found for architecture armv7