下面以比较流行的mysql图形化管理工具Navicat为例,其他工具或者在命令行中以及编程语言中 *** 作时的执行的sql语句是一样的。
1、假设在数据库中有一个名为testtest的表格,表格内容如下图所示,表中有三条记录是9月份的
2、打开一个查询窗口,输入查询语句select * from testtest where month(date)='9',该语句表示查询testtest表格中9月份的记录
3、点击“运行”执行该sql语句,在下方可以看到已经查询到了9月份的三条记录
4、如需按年查询可输入select * from testtest where year(date)='2017',2017代表需要查询的年份。如下图所示只查询到了一条记录是2017年的
1、查询确定年月的数据,使用to_date或to_char都可以实现SELECT * FROM 表名
WHERE TO_CHAR(日期列,'YYYY-MM') = TO_CHAR('2013-06','YYYY-MM') 或者
SELECT * FROM 表名
WHERE 日期列 = TO_Date('2013-06','YYYY-MM')
2、查询前一个月
select concat(to_char(sysdate,'yyyy')||to_char(add_months(sysdate,-1), '-MM-'),'01 00:00:00')start_time,
concat(to_char(sysdate,'yyyy')||to_char(add_months(sysdate,-1), '-MM-')||to_char(LAST_DAY(sysdate),'dd '),'23:59:59') end_time from dual
3、查询前一天
select to_char(sysdate-1,'yyyy-mm-dd ')||'00:00:00' start_time,to_char(sysdate-1,'yyyy-mm-dd ')||'23:59:59' end_time from dual
SQL中查询一个月里的数据,举例及解决方法如下:
1、假如要查询表t1字段mydate为2015-10-1至2015-10-31之间的所有数据。
2、可以使用以下查询语句:
SELECT * FROM t1 WHERE mydate BETWEEN '2015-10-01' and '2015-10-31'
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)