数据库查询当前时间⼤全(MySQL、Oracle、Sqlserver)
⽂章⽬录
前⾔
数据库简介
SqlServser:Microsoft产品,通过良好的ODBC接⼝可以将Access、FoxPro、Excel转换为SQLServer数据库。
Oracle:运⾏于所有主流平台,完全⽀持所有的⼯业标准(ODBC、JDBC、OCI),采⽤完全开放策略。Oracle并⾏服务器通过使⼀组结点共享同⼀簇中的⼯作扩展Windows NT的能⼒,提⾼可利⽤性和⾼伸缩性的簇的解决⽅案。⽀持⼤并发,⼤访问量。价格昂贵。
MySql:不⽀持事务处理,没有视图,没有存储过程和触发器,没有数据库端的⽤户⾃定义的函数,不能完全适⽤标准的SQL语法。⽬前可能已经⽀持。
优点
MySQL优点:体积⼩、速度快、总体拥有成本低,开放源码,搭
配“L(Linux)A(Apache)M(MySQL)P(PHP/Perl/Python)“或“LN(Nginx)MP”就可以建⽴起⼀个稳定、免费的⽹站系统,适合中⼩型⽹站。
Oracle优点:使⽤⽅便、功能强⼤,可靠性好、安全性好、可移植性好、适应⾼吞吐量,适⽤于各类⼤、中、⼩、微机环境。
SqlServer优点:图形化⽤户界⾯,丰富的编程接⼝⼯具,与Windows NT完全集成,⽀持分布式的分区视图,适⽤于Win的Web技术的开发。
MySql时间查询
MySql查询当前时间
1. 查询 年-⽉-⽇ 时:分:秒
select now()
2. 查询 年-⽉-⽇
select DATE(CURDATE())
3. 查询 年-⽉
select date_format(NOW(),'%Y-%m')数据库数据表access
4. 查询当前年
select YEAR(CURDATE())
5. 查询当前⽉
select MONTH(CURDATE())
6. 查询当前⽇
select DAYOFMONTH(NOW())
7. 查询当前星期⼏
select dayofweek(NOW()) -1
8. 查询当前季度
select QUARTER(now())
9. 查询 时:分:秒
select current_time()
查看结果
对应上⾯的序号展⽰输出的结果
最后给⼤家介绍⼀个万能的,可以单独取出年、⽉、⽇、时、分、秒
select DATE_FORMAT(now(),'%Y-%m-%d %h:%i:%s')
⽐如想取出当前的⼩时
select DATE_FORMAT(now(),'%h')
MySql查询上⼀年、上⼀个⽉、上⼀个星期…
1. 查询昨天的数据
select * from test as 'time' where time.update_time <DATE_SUB(CURDATE(), INTERVAL 1 DAY)
2. 查询上⼀周的数据
select * from test as 'time' where time.update_time<DATE_SUB(CURDATE(), INTERVAL 1 WEEK)
3. 查询上⼀个⽉的数据
select * from test as 'time' where time.update_time<DATE_SUB(CURDATE(), INTERVAL 1 MONTH)
4. 查询上⼀年的数据
select * from test as 'time' where time.update_time<DATE_SUB(CURDATE(), INTERVAL 1 YEAR)
这些查询都是类似的,并且INTERVAL 1 函数还可以增加查询,⽐如:需要查询近六天的数据就可以将数字变成6就可以了select * from test as 'time' where time.update_time <DATE_SUB(CURDATE(), INTERVAL 6 DAY)
MySql查询本年、本⽉、本周…
1. 查询今天的数据
select * from test as time where to_days(time.update_time ) =to_days(now());
抹茶拿铁是什么意思2. 查询本周的数据
select * FROM test as time WHERE YEARWEEK(date_format(time.update_time ,'%Y-%m-%d')) = YEARWEEK(now());
3. 查询本⽉的数据
select * FROM test as time WHERE DATE_FORMAT(time.update_time , '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
4. 查询本季度的数据
select * from test as time where QUARTER(time.update_time)=QUARTER(now());
5. 查询本年的数据
select * from test as time where YEAR(time.update_time)=YEAR(NOW());
Oracle时间查询
oracle查询当前时间
oracle数据库中有⼀个函数是和Mysql中的DATE_FORMAT函数差不多,下⾯主要来介绍他的使⽤⽅式:
1. 查询当前时间 年-⽉-⽇ 时:分:秒
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual
2. 查询当前年
select to_char(sysdate,'yyyy') from dual
3. 查询当前⽉
select to_char(sysdate,'mm') from dual
4. 查询当前⽇
select to_char(sysdate,'dd ') from dual
5. 查询当前⼩时(按24⼩时)
select to_char(sysdate,'hh24') from dual
6. 查询当前分钟
select to_char(sysdate,'mi') from dual
霹雳布袋戏最漂亮的女人
7. 查询当前秒
select to_char(sysdate,'ss') from dual
8. 查询当前季节
select to_char(sysdate,'q') from dual
注意:在Oracle 中,FROM 关键字是必不可少的
输出结果
ssm框架是web的内容嘛Oracle查询上⼀年、上⼀个⽉、上⼀个星期…
sql select sysdate,sysdate-interval '10' minute from dual;
架构师是最难考的吗2. 获取⼀个⼩时前的⽇期
⽅式⼀:select sysdate,sysdate-interval '1' hour from dual;
⽅式⼆:select sysdate,sysdate-1/24 from dual;
3. 获取⼀天前的⽇期
⽅式⼀:select sysdate, sysdate - interval '1' day from dual;
⽅式⼆:select sysdate, sysdate - 1 from dual;
4. 获取⼀周前的⽇期
select sysdate, sysdate - interval '7' day from dual;
5. 获取⼀个⽉前的⽇期
select sysdate,sysdate-interval '1' month from dual;
6. 获取⼀年前的⽇期
select sysdate,sysdate-interval '1' year from dual;
Oracle查询⼀年内、⼀个⽉内、⼀个星期内…
SELECT count(*) FROM TB WHERE 字段 BETWEEN sysdate-interval '10' minute AND SYSDATE;
2. 获取⼀个⼩时内的数据
SELECT count(*) FROM TB WHERE 字段 BETWEEN sysdate-interval '1' hour AND SYSDATE;
3. 获取⼀天内的数据
SELECT count(*) FROM TB WHERE 字段 BETWEEN SYSDATE-1 AND SYSDATE;
4. 获取⼀周内的数据
⽅式⼀:select count(*) from TB where 字段 > sysdate - interval '7' day;
⽅式⼆:select count(*) from TB where 字段 > sysdate - 7;
5. 获取⼀个⽉内的数据 ⽅式⼀:select count(*) from TB where 字段 > add_months(sysdate,-1);
⽅式⼆:SELECT count(*) FROM TB WHERE 字段 BETWEEN sysdate-interval '1' month AND SYSDATE;
6. 获取⼀年内的数据
select count(*) from TB WHERE 字段 BETWEEN sysdate-interval '1' year AND SYSDATE;
Sqlserver时间查询
Sqlserver查询当前时间
1. 获取当前⽇期 年-⽉-⽇ 时:分:秒
select GETDATE()
2. 取时间的某个部分
select Date()) --年
select Date()) --⽉
select Date()) --⽇
select Date()) --时
select Date()) --分
select Date()) --秒
3. 取当前星期⼏
mysql查看所有存储过程select Date()) --星期⼏
Sqlserver查询最近⼀周、最近⼀个⽉…
1. 查询最近⼀周
select * from 表名 where DateDiff(dd,datetime类型字段,getdate())<=7
2. 查询最近⼀个⽉
select * from 表名 where DateDiff(dd,datetime类型字段,getdate())<=30
3. 查询昨天
select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=1
SqlServer查询当前年、当前⽉、当前周…
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论