select * from Biz_ExamCollection where collectionType = 5 AND date_format(createDTM,'%Y-%m-%d') <= date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),'%Y-%m-%d')
MySQL查询指定时间的数据:
#获取当月数据
SELECT * FROM user_event WHERE DATE_FORMAT(create_time,'%Y-%m') = DATE_FORMAT(NOW(),'%Y-%m')
#获取3月份数据
SELECT * FROM user_event WHERE DATE_FORMAT(create_time,'%Y-%m') = DATE_FORMAT('2016-03-01','%Y-%m')
#获取三月份数据
SELECT * FROM user_event WHERE YEAR(create_time)='2016' AND MONTH(create_time)='3'
#获取本周数据
SELECT * FROM user_event WHERE YEARWEEK(DATE_FORMAT(create_time,'%Y-%m-%d')) = YEARWEEK(NOW())
#查询上周的数据
SELECT * FROM user_event WHERE YEARWEEK(DATE_FORMAT(create_time,'%Y-%m-%d')) = YEARWEEK(NOW())-1
#查询距离当前现在6个月的数据
SELECT * FROM user_event WHERE create_time BETWEEN DATE_SUB(NOW(),interval 6 month) and NOW()
#查询上个月的数据
SELECT * FROM user_event WHERE DATE_FORMAT(create_time,'%Y-%m')=DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 MONTH),'%Y-%m')
扩展资料
MYSQL基础知识:
数据库增删查改
创建数据库:语法:create database 数据库 [character 字符集 collate 校对规则]
查看数据库:
查看所有数据库:show databases
查看某个数据库:show create database 数据库名;
修改数据库:语法:alter database 数据库名 character 字符集 collate 校对规则
删除数据库:语法:drop database 数据库名;
切换数据库:use 数据库名;
查看当前使用数据库:select database()
数据库表 *** 作
创建表语法:
create table 表名 (
字段名 类型(长度) 约束,
字段名 类型(长度) 约束,
字段名 类型(长度) 约束
)
你应该把你要查的表结构说一下,表中是否有字段存时间??? \x0d\x0a你的between and 语法错误! \x0d\x0a\x0d\x0aSELECT a.pin, a.score , b.`Name`\x0d\x0aFROM xeng.score_history a, ulinkm_xedu.account b\x0d\x0aWHERE\x0d\x0aa.app_type = 'p24Point' AND\x0d\x0aa.pin = b.PIN AND \x0d\x0aUNIX_TIMESTAMP( a.date_time) BETWEEN UNIX_TIMESTAMP(CURDATE())+3600*10 AND UNIX_TIMESTAMP(CURDATE())+3600*20 \x0d\x0a \x0d\x0aGROUP BY\x0d\x0aa.pin\x0d\x0aORDER BY\x0d\x0aa.score DESC\x0d\x0a \x0d\x0a说明 UNIX_TIMESTAMP( a.date_time): 将日期格式转换为时间戳格式\x0d\x0a UNIX_TIMESTAMP(CURDATE()): 当天 00:00 的是时间戳 \x0d\x0a3600*10 :你设定的时间范围 单位:秒可以了解一下MySQL的时间戳(Timestamp)数据类型:默认时间戳(Timestamp)类型的取值范围为'1970-01-01 00:00:01' UTC至'2038-01-19 03:14:07' UTC,数据精确到秒级别,该取值范围包含约22亿个数值,因此在MySQL内部使用4个字节INT类型来存放时间戳数据:
1、在存储时间戳数据时,先将本地时区时间转换为UTC时区时间,再将UTC时区时间转换为INT格式的毫秒值(使用UNIX_TIMESTAMP函数),然后存放到数据库中。
2、在读取时间戳数据时,先将INT格式的毫秒值转换为UTC时区时间(使用FROM_UNIXTIME函数),然后再转换为本地时区时间,最后返回给客户端。
(Timestamp)时间戳列可以有四张组合定义,其含义分别为:
1、当字段定义为timestamp,表示该字段在插入和更新时都不会自动设置为当前时间。
2、当字段定义为timestamp DEFAULT CURRENT_TIMESTAMP,表示该字段仅在插入且未指定值时被赋予当前时间,再更新时且未指定值时不做修改。
3、当字段定义为timestamp ON UPDATE CURRENT_TIMESTAMP,表示该字段在插入且未指定值时被赋值为"0000-00-00 00:00:00",在更新且未指定值时更新为当前时间。
4、当字段定义为timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,表示该字段在插入或更新时未指定值,则被赋值为当前时间。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)