1、to_date() 函数 (俗称:日期转换函数)

1.1 格式

  to_date("要转换的字符串","转换的格式")   //两个参数的格式必须匹配,否则会报错。即按照第二个参数的格式解释第一个参数。

1.2 例子

 -- 根据时间查询
2 select to_date('2005-12-25,13:25:59','yyyy-mm-dd,hh24:mi:ss') from dual -- 返回结果:2005-12-25 13:25:59 //hh24表示:时间是24小时制的
select to_date('2005-12-25,13:25:59','yyyy-mm-dd,hh:mi:ss') from dual -- 返回结果:2005-12-25 01:25:59 //去掉24的结果
-- 查询当前系统时间。 sysdate:系统时间
select to_date(sysdate,'yyyy-mm-dd,hh24:mi:ss') from dual -- 返回结果:2018-04-10 12:30:50

说明:

表示year的:y  表示年的最后一位 yy 表示年的最后2位 yyy 表示年的最后3位 yyyy 用4位数表示年
表示month的:mm 用2位数字表示月; -- MySQL 月份用大 MM 表示
表示day的:dd 表示当月第几天;ddd表示当年第几天;dy 当周第几天
表示hour的:hh 2位数表示小时 12进制; hh24 2位数表示小时 24小时 -- MySQL 小时用大 HH 表示
表示minute的:mi 2位数表示分钟 -- MySQL 分钟用 mm 表示
表示second的:ss 2位数表示秒 60进制
表示季度的:q 一位数 表示季度 (1-4) 另外还有 ww 用来表示当年第几周 w用来表示当月第几周。

2、 to_char() 函数 (俗称:字符串转换函数)

2.1 格式

  to_char(日期,"转换格式" )    //即把给定的日期按照“转换格式”转换。

2.2 例子

 -- 查询当前系统时间
select to_char(sysdate,'yy-mm-dd hh24:mi:ss') from dual -- 返回结果:18-04-10 13:22:42 //这个结果表示的是一串 字符串,并不是时间.

3、实例

1、在数据库中,根据 "时间" 查询数据

select * from MATERIAL t WHERE t.insert_date = to_date('2018-04-10 10:30:00','YYYY-MM-DD HH24:mi:ss');

查询结果:

 2、在数据库中,插入与“时间”相关的数据

insert into student(name,birthday,age,phone,email)
values('zhangsan',to_date('2018-01-10 19:55:45','yyyy-MM-dd hh24:mi:ss'),,'','123456789@qq.com'); -- 插入数据

查询结果:

4. 附录

-- 当前时间减去7分钟的时间
select sysdate,sysdate - interval '' MINUTE from dual
-- 当前时间减去7小时的时间
select sysdate - interval '' hour from dual
-- 当前时间减去7天的时间
select sysdate - interval '' day from dual
-- 当前时间减去7月的时间
select sysdate,sysdate - interval '' month from dual
-- 当前时间减去7年的时间
select sysdate,sysdate - interval '' year from dual
-- 时间间隔乘以一个数字
select sysdate,sysdate - 8*interval '' hour from dual -- 在当前时间加一月 或 一年
select sysdate,add_months(sysdate,12) from dual; --加1年
select sysdate,add_months(sysdate,1) from dual; --加1月
-- 在当前时间加一天 或 一小时
select sysdate+N from dual; -- sysdate+1 加一天; sysdate+1/24 加1小时;

原创作者:DSHORE

作者主页:http://www.cnblogs.com/dshore123/

原文出自:http://www.cnblogs.com/dshore123/p/8778205.html

欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!

在数据库中(Oracle),根据时间查询数据: to_date()和to_char()函数的更多相关文章

  1. 数据库中无数据时查询数据为空,但出现空指针异常的解决方案(转载https://blueskator.iteye.com/blog/2096026)

    异常:java.lang.NullPointerException 解决方案: try{ hotelImageList = ihotelImgManager.query(hiqc); }catch(E ...

  2. 随机获取数据库中的某一条数据(基于yii2框架开发)

    注意: 使用PHP函数array_rand()得到的是这个数组中的那个值相对应的下标键值,需要配合原来的数组进行,例如: $rand_keys = array_rand($ids,1); $id = ...

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

    在mysql数据库中关于日期时间字段的处理 在开发中,日期时间字段一般有如下几种设计 假设要获取2013-08-15日到2013-08-16日之间的记录 1. 直接使用日期时间类字段 相关sql语句如 ...

  4. laravel如何从mysql数据库中随机抽取n条数据

    laravel如何从mysql数据库中随机抽取n条数据 一.总结 一句话总结: inRandomOrder():$userQuestions=UserQuestion::where($map)-> ...

  5. Oracle 中的 TO_DATE 和 TO_CHAR 函数

    Oracle 中的 TO_DATE 和 TO_CHAR 函数oracle 中 TO_DATE 函数的时间格式,以 2008-09-10 23:45:56 为例 格式 说明 显示值 备注 Year(年) ...

  6. 【转】Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理

    Oracle 中的 TO_DATE 和 TO_CHAR 函数oracle 中 TO_DATE 函数的时间格式,以 2008-09-10 23:45:56 为例 格式 说明 显示值 备注 Year(年) ...

  7. Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理

    Oracle 中的 TO_DATE 和 TO_CHAR 函数 oracle 中 TO_DATE 函数的时间格式,以 :: 为例 格式 说明 显示值 备注 Year(年): yy two digits( ...

  8. java向oracle数据库中插入当前时间

    public class Test{public static void main (String args []){ java.util.Date a = new java.util.Date(); ...

  9. 根据从redis缓存的数据查询出来,在从数据库中取出所有的数据,俩个数据进行比较,去掉重复,剩下库中新插入的数据,取出新数据,然后把redis中的缓存数据清空把从数据库中查出来的所有数据放到redis缓存中

    参考代码: public String getNewCenter(HttpServletRequest request,HttpServletResponse resonse){ JSONObject ...

随机推荐

  1. Omeed 线段树

    目录 题面 题解 代码 题面 2.12 - - - 题解 大概还是挺妙的? 首先基础分和连击分互不干扰,所以可以分开统计. 基础分的统计比较简单,等于: \[A \sum_{i = l}^{r} p_ ...

  2. 常州day7

    Task1 蛤布斯有一个序列,初始为空.它依次将 1-n 插入序列,其中 i 插到当前第 ai 个数的右边 (ai=0 表示插到序列最左边).它希望你帮 它求出最终序列. 对于 100%的数据,n&l ...

  3. [CF1087D]Minimum Diameter Tree

    link 题目大意 有$n$个点的前边权为$0$的树,你要加入$S$边权总量,可以为分数,使得当前树的直径最小. 题目分析 题目过于毒瘤,导致于最后$1$个小时一直在做此题,没想到真的只是一个结论一样 ...

  4. [CEOI2004]锯木厂选址

    link 试题分析 做这种题就应该去先写个暴力代码 #include<iostream> #include<cstring> #include<cstdio> #i ...

  5. 改变 jq中 data-id 的值

    if (_this.hasClass('default_btn_is')){ _this.removeClass('default_btn_is'); _this.addClass('default_ ...

  6. horizon源码分析(一)

    源码版本:H版 一.写在前面 本来应该搭建horizon的development环境的,这样方便debug,但是由于各种报错,本人没有搭建成功,这也导致有很多源码疑问没有解决,后续可以继续补充这一部分 ...

  7. [DeeplearningAI笔记]序列模型2.7负采样Negative sampling

    5.2自然语言处理 觉得有用的话,欢迎一起讨论相互学习~Follow Me 2.7 负采样 Negative sampling Mikolov T, Sutskever I, Chen K, et a ...

  8. 日期/时间处理工具 DateTimeUtil

    此类是我们项目的 日期/时间处理工具,在此做个记录! /* * Copyright 2014-2018 xfami.com. All rights reserved. * Support: https ...

  9. 单调队列 + 组合数统计 Gym 101102D

    题目链接:http://codeforces.com/gym/101102/problem/D 题目大意:给你一个n*m的矩阵,矩阵里面的数值范围为[1,1e9].这个矩阵有一个值,如果相邻的多个数字 ...

  10. HDU6127 简单几何 暴力二分

    LINK 题意:给出n个点,每个点有个权值,可以和任意另外一点构成线段,值为权值积.现问过原点的直线中交所有线段的权值和的最大值,注意直线必不经过点. 思路:直线可以将点集分为两侧,此时的权值为两侧点 ...