精华内容
下载资源
问答
  • 最近遇到一个日期查询问题,不考虑时间,只查询某一天的数据,所以需要使用...select * from TBALENAME(自己的表名) where tochar(date(字段名),'YYYY-MM-DD') = tochar(sysdate,'YYYY-MM-DD') 2.tochar遇到的问题 当

    最近遇到一个日期查询问题,不考虑时间,只查询某一天的数据,所以需要使用时间格式‘YYYY-MM-DD’来进行格式转化

    1.tochar使用方式

    select to_char(sysdate,'YYYY-MM-DD') from dual
    

    在这里插入图片描述
    这种方式有利于查询当天的数据,非常方便

    select * from TBALENAME(自己的表名) where tochar(date(字段名),'YYYY-MM-DD') = tochar(sysdate,'YYYY-MM-DD')
    

    2.tochar遇到的问题

    当我想查询其他日期时,写了这么一个sql语句

    select * from TBALENAME(自己的表名) where tochar(date(字段名),'YYYY-MM-DD') = tochar('2021-11-03','YYYY-MM-DD')
    
    哦豁,报错
    

    在这里插入图片描述
    在这里,聪明的孩子应该已经看到错误了,但是呢,我不是聪明的孩子。o(╥﹏╥)o
    有人会问了,为什么to_date来查,因为有的数据日期格式带有时间,不方便查询某一天的数据。
    3.找错误
    我从网上看了有关 to_char的相关资料
    在这里插入图片描述
    附上链接:https://blog.csdn.net/qichangjian/article/details/88391761
    没错,将日期转换为字符类型,而我传的却是字符串,所以就会报错
    4.解决
    ①使用to_date将‘2021-11-03’先转换为日期类型,再使用to_char转为字符类型

    select to_char(to_date('2021-11-04','YYYY-MM-DD'),'YYYY-MM-DD') from dual
    

    在这里插入图片描述
    ②一般来讲,后端关于时间的属性都定义为日期类型,比如Timestamp,所以就算你测试时传入字符串也会自动转换为时间类型,所以也可以直接使用to_char进行直接转化,但是传入字符串的格式必须带有时间,比如:‘2021-11-04 00:00:00’
    附上一段查询代码供参考

     TO_CHAR(PLAN_DATE,'YYYY-MM-DD') =  TO_CHAR(#{condDto.searchDate},'YYYY-MM-DD')
    
    展开全文
  • mysqlto_char(sysdate,'yyyy-mm-dd')-->date_format(sysdate(),'%Y-%m-%d');to_date(sysdate,'yyyy-mm-dd')-->STR_TO_DATE(sysdate(),'%Y-%m-%d');1.oracle(1)使用TO_CHAR函数处理数字TO_CHAR(nu...

    oracle --> mysql

    to_char(sysdate,'yyyy-mm-dd')-->date_format(sysdate(),'%Y-%m-%d');

    to_date(sysdate,'yyyy-mm-dd')-->STR_TO_DATE(sysdate(),'%Y-%m-%d');

    1.oracle

    (1)使用TO_CHAR函数处理数字

    TO_CHAR(number, '格式')

    TO_CHAR(salary,’$99,999.99’);

    (2)使用TO_CHAR函数处理日期

    TO_CHAR(date,’格式’);

    to_char(sysdate,'q') 季

    to_char(sysdate,'yyyy')年

    to_char(sysdate,'mm')月

    to_char(sysdate,'dd')日

    to_char(sysdate,'d')星期中的第几天

    to_char(sysdate,'DAY')星期几

    to_char(sysdate,'ddd')一年中的第几天

    (3)TO_NUMBER

    使用TO_NUMBER函数将字符转换为数字

    TO_NUMBER(char[, '格式'])

    (4) TO_DATE

    使用TO_DATE函数将字符转换为日期

    TO_DATE(char[, '格式'])

    2.SQL

    1)类型转换:Cast()类型转换,例:Cast(@startdate as datetime),Cast(name as nvarchar)

    2)日期截取:Datepart()返回代表指定日期的指定日期部分的整数,例:

    Datepart(Dd,@startdate)--取日,

    Datepart(Month,@startdate)--取月,

    Datepart(Yy,@startdate)--取年

    3)日期操作:Dateadd()在向一个日期加上一个段时间的基础上,返回新的datetime类型。例:加2天 Dateadd(day,2,'2009-6-1')返回:2009-6-3 00:00:00.000

    3.mysql

    日期格式转换:date_format(date,format), time_format(time,format)

    1)使用DATE_FORMAT(数据库字段,'%Y%m%d')将时间类型字段格式为"yyyy-mm-dd"字符串格式

    2)str_to_date(数据库字段,'%m.%d.%Y')将字符串类型字段格式为"yyyy-mm-dd"时间格式

    3)mysql> select date_format('2008-08-08 22:23:00', '%W %M %Y');

    +------------------------------------------------+

    | date_format('2008-08-08 22:23:00', '%W %M %Y') |

    +------------------------------------------------+

    | Friday August 2008 |

    +------------------------------------------------+

    mysql> select date_format('2008-08-08 22:23:01', '%Y%m%d%H%i%s');

    +----------------------------------------------------+

    | date_format('2008-08-08 22:23:01', '%Y%m%d%H%i%s') |

    +----------------------------------------------------+

    | 20080808222301 |

    +----------------------------------------------------+

    mysql> select time_format('22:23:01', '%H.%i.%s');

    +-------------------------------------+

    | time_format('22:23:01', '%H.%i.%s') |

    +-------------------------------------+

    | 22.23.01 |

    +-------------------------------------+

    MySQL 日期、时间转换函数:date_format(date,format), time_format(time,format) 能够把一个日期/时间转换成各种各样的字符串格式。它是 str_to_date(str,format) 函数的 一个逆转换。

    4.to_number比较

    TO_NUMBER用cast就可,但要填适当的类型,示例:

    select cast(11 as unsigned int) /*整型*/

    select cast(11 as decimal(10,2)) /*浮点型*/

    转载于:https://www.cnblogs.com/rmsSpring/archive/2013/03/05/SQL.html

    点赞

    收藏

    分享

    文章举报

    0d16838d416a766e95bd811e6a973089.gif

    068be7e19a8fd7ea1cc73db7ddbb42c1.png

    Xiaomi8261

    发布了0 篇原创文章 · 获赞 0 · 访问量 94

    私信

    关注

    展开全文
  • 具体用法:to_date('2004-11-27','yyyy-mm-dd'),前者为字符串,后者为转换日期格式,注意,前后两者要以一对应。 如;to_date('2004-11-27 13:34:43', 'yyyy-mm-dd hh24:mi:ss') 将得到具体的时间 多种日期格式: ...

    1、转换函数

    与date操作关系最大的就是两个转换函数:to_date(),to_char()

    to_date() 作用将字符类型按一定格式转化为日期类型:

    具体用法:to_date('2004-11-27','yyyy-mm-dd'),前者为字符串,后者为转换日期格式,注意,前后两者要以一对应。

    如;to_date('2004-11-27 13:34:43', 'yyyy-mm-dd hh24:mi:ss') 将得到具体的时间

    多种日期格式:

    YYYY:四位表示的年份

    YYY,YY,Y:年份的最后三位、两位或一位,缺省为当前世纪

    MM:01~12的月份编号

    MONTH:九个字符表示的月份,右边用空格填补

    MON:三位字符的月份缩写

    WW:一年中的星期

    D:星期中的第几天

    DD:月份中的第几天

    DDD:年所中的第几天

    DAY:九个字符表示的天的全称,右边用空格补齐

    HH,HH12:一天中的第几个小时,12进制表示法

    HH24:一天中的第几个小时,取值为00~23

    MI:一小时中的分钟

    SS:一分钟中的秒

    SSSS:从午夜开始过去的秒数

    to_char():将日期转按一定格式换成字符类型

    SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') time from dual;

    TIME

    -------------------

    2004-10-08 15:22:58

    即把当前时间按yyyy-mm-dd hh24:mi:ss格式转换成字符类型

    在oracle中处理日期大全

    TO_DATE格式

    Day:

    dd number 12

    dy abbreviated fri

    day spelled out friday

    ddspth spelled out, ordinal twelfth

    Month:

    mm number 03

    mon abbreviated mar

    month spelled out march

    Year:

    yy two digits 98

    yyyy four digits 1998

    24小时格式下时间范围为: 0:00:00 - 23:59:59....

    12小时格式下时间范围为: 1:00:00 - 12:59:59 ....

    [ZT]日期和時間函數匯總

    1.

    日期和字符转换函数用法(to_date,to_char)

    2.

    select to_char( to_date(222,'J'),'Jsp') from dual

    显示Two Hundred Twenty-Two

    3.

    求某天是星期几

    select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day') from dual;

    星期一

    select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual;

    monday

    设置日期语言

    ALTER SESSION SET NLS_DATE_LANGUAGE='AMERICAN';

    也可以这样

    TO_DATE ('2002-08-26', 'YYYY-mm-dd', 'NLS_DATE_LANGUAGE = American')

    4.

    两个日期间的天数

    select floor(sysdate - to_date('20020405','yyyymmdd')) from dual;

    5. 时间为null的用法

    select id, active_date from table1

    UNION

    select 1, TO_DATE(null) from dual;

    注意要用TO_DATE(null)

    6.

    a_date between to_date('20011201','yyyymmdd') and to_date('20011231','yyyymmdd')

    那么12月31号中午12点之后和12月1号的12点之前是不包含在这个范围之内的。

    所以,当时间需要精确的时候,觉得to_char还是必要的

    7. 日期格式冲突问题

    输入的格式要看你安装的ORACLE字符集的类型, 比如: US7ASCII, date格式的类型就是: '01-Jan-01'

    alter system set NLS_DATE_LANGUAGE = American

    alter session set NLS_DATE_LANGUAGE = American

    或者在to_date中写

    select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual;

    注意我这只是举了NLS_DATE_LANGUAGE,当然还有很多,

    可查看

    select * from nls_session_parameters

    select * from V$NLS_PARAMETERS

    8.

    select count(*)

    from ( select rownum-1 rnum

    from all_objects

    where rownum <= to_date('2002-02-28','yyyy-mm-dd') - to_date('2002-

    02-01','yyyy-mm-dd')+1

    )

    where to_char( to_date('2002-02-01','yyyy-mm-dd')+rnum-1, 'D' )

    not

    in ( '1', '7' )

    查找2002-02-28至2002-02-01间除星期一和七的天数

    在前后分别调用DBMS_UTILITY.GET_TIME, 让后将结果相减(得到的是1/100秒, 而不是毫秒).

    9.

    select months_between(to_date('01-31-1999','MM-DD-YYYY'),

    to_date('12-31-1998','MM-DD-YYYY')) "MONTHS" FROM DUAL;

    1

    select months_between(to_date('02-01-1999','MM-DD-YYYY'),

    to_date('12-31-1998','MM-DD-YYYY')) "MONTHS" FROM DUAL;

    1.03225806451613

    10. Next_day的用法

    Next_day(date, day)

    Monday-Sunday, for format code DAY

    Mon-Sun, for format code DY

    1-7, for format code D

    11

    select to_char(sysdate,'hh:mi:ss') TIME from all_objects

    注意:第一条记录的TIME 与最后一行是一样的

    可以建立一个函数来处理这个问题

    create or replace function sys_date return date is

    begin

    return sysdate;

    end;

    select to_char(sys_date,'hh:mi:ss') from all_objects;

    12.

    获得小时数

    SELECT EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 2:38:40') from offer

    SQL> select sysdate ,to_char(sysdate,'hh') from dual;

    SYSDATE TO_CHAR(SYSDATE,'HH')

    -------------------- ---------------------

    2003-10-13 19:35:21 07

    SQL> select sysdate ,to_char(sysdate,'hh24') from dual;

    SYSDATE TO_CHAR(SYSDATE,'HH24')

    -------------------- -----------------------

    2003-10-13 19:35:21 19

    获取年月日与此类似

    13.

    年月日的处理

    select older_date,

    newer_date,

    years,

    months,

    abs(

    trunc(

    newer_date-

    add_months( older_date,years*12+months )

    )

    ) days

    from ( select

    trunc(months_between( newer_date, older_date )/12) YEARS,

    mod(trunc(months_between( newer_date, older_date )),

    12 ) MONTHS,

    newer_date,

    older_date

    from ( select hiredate older_date,

    add_months(hiredate,rownum)+rownum newer_date

    from emp )

    )

    14.

    处理月份天数不定的办法

    select to_char(add_months(last_day(sysdate) +1, -2), 'yyyymmdd'),last_day(sysdate) from dual

    16.

    找出今年的天数

    select add_months(trunc(sysdate,'year'), 12) - trunc(sysdate,'year') from dual

    闰年的处理方法

    to_char( last_day( to_date('02' || :year,'mmyyyy') ), 'dd' )

    如果是28就不是闰年

    17.

    yyyy与rrrr的区别

    'YYYY99 TO_C

    ------- ----

    yyyy 99 0099

    rrrr 99 1999

    yyyy 01 0001

    rrrr 01 2001

    18.不同时区的处理

    select to_char( NEW_TIME( sysdate, 'GMT','EST'), 'dd/mm/yyyy hh:mi:ss') ,sysdate

    from dual;

    19.

    5秒钟一个间隔

    Select TO_DATE(FLOOR(TO_CHAR(sysdate,'SSSSS')/300) * 300,'SSSSS') ,TO_CHAR(sysdate,'SSSSS')

    from dual

    2002-11-1 9:55:00 35786

    SSSSS表示5位秒数

    20.

    一年的第几天

    select TO_CHAR(SYSDATE,'DDD'),sysdate from dual

    310 2002-11-6 10:03:51

    21.计算小时,分,秒,毫秒

    select

    Days,

    A,

    TRUNC(A*24) Hours,

    TRUNC(A*24*60 - 60*TRUNC(A*24)) Minutes,

    TRUNC(A*24*60*60 - 60*TRUNC(A*24*60)) Seconds,

    TRUNC(A*24*60*60*100 - 100*TRUNC(A*24*60*60)) mSeconds

    from

    (

    select

    trunc(sysdate) Days,

    sysdate - trunc(sysdate) A

    from dual

    )

    select * from tabname

    order by decode(mode,'FIFO',1,-1)*to_char(rq,'yyyymmddhh24miss');

    //

    floor((date2-date1) /365) 作为年

    floor((date2-date1, 365) /30) 作为月

    mod(mod(date2-date1, 365), 30)作为日.

    23.next_day函数

    next_day(sysdate,6)是从当前开始下一个星期五。后面的数字是从星期日开始算起。

    1 2 3 4 5 6 7

    日 一 二 三 四 五 六

    oracle中有很多关于日期的函数

    在oracle中有很多关于日期的函数,如:

    1、add_months()用于从一个日期值增加或减少一些月份

    date_value:=add_months(date_value,number_of_months)

    例:

    SQL> select add_months(sysdate,12) "Next Year" from dual;

    Next Year

    ----------

    13-11月-04

    SQL> select add_months(sysdate,112) "Last Year" from dual;

    Last Year

    ----------

    13-3月 -13

    SQL>

    2、current_date()返回当前会放时区中的当前日期

    date_value:=current_date

    SQL> column sessiontimezone for a15

    SQL> select sessiontimezone,current_date from dual;

    SESSIONTIMEZONE CURRENT_DA

    --------------- ----------

    +08:00 13-11月-03

    SQL> alter session set time_zone='-11:00'

    2 /

    会话已更改。

    SQL> select sessiontimezone,current_timestamp from dual;

    SESSIONTIMEZONE CURRENT_TIMESTAMP

    --------------- ------------------------------------

    -11:00 12-11月-03 04.59.13.668000 下午 -11:

    00

    SQL>

    3、current_timestamp()以timestamp with time zone数据类型返回当前会放时区中的当前日期

    timestamp_with_time_zone_value:=current_timestamp([timestamp_precision])

    SQL> column sessiontimezone for a15

    SQL> column current_timestamp format a36

    SQL> select sessiontimezone,current_timestamp from dual;

    SESSIONTIMEZONE CURRENT_TIMESTAMP

    --------------- ------------------------------------

    +08:00 13-11月-03 11.56.28.160000 上午 +08:

    00

    SQL> alter session set time_zone='-11:00'

    2 /

    会话已更改。

    SQL> select sessiontimezone,current_timestamp from dual;

    SESSIONTIMEZONE CURRENT_TIMESTAMP

    --------------- ------------------------------------

    -11:00 12-11月-03 04.58.00.243000 下午 -11:

    00

    SQL>

    4、dbtimezone()返回时区

    varchar_value:=dbtimezone

    SQL> select dbtimezone from dual;

    DBTIME

    ------

    -07:00

    SQL>

    5、extract()找出日期或间隔值的字段值

    date_value:=extract(date_field from [datetime_value|interval_value])

    SQL> select extract(month from sysdate) "This Month" from dual;

    This Month

    ----------

    11

    SQL> select extract(year from add_months(sysdate,36)) "3 Years Out" from dual;

    3 Years Out

    -----------

    2006

    SQL>

    6、last_day()返回包含了日期参数的月份的最后一天的日期

    date_value:=last_day(date_value)

    SQL> select last_day(date'2000-02-01') "Leap Yr?" from dual;

    Leap Yr?

    ----------

    29-2月 -00

    SQL> select last_day(sysdate) "Last day of this month" from dual;

    Last day o

    ----------

    30-11月-03

    SQL>

    7、localtimestamp()返回会话中的日期和时间

    timestamp_value:=localtimestamp

    SQL> column localtimestamp format a28

    SQL> select localtimestamp from dual;

    LOCALTIMESTAMP

    ----------------------------

    13-11月-03 12.09.15.433000

    下午

    SQL> select localtimestamp,current_timestamp from dual;

    LOCALTIMESTAMP CURRENT_TIMESTAMP

    ---------------------------- ------------------------------------

    13-11月-03 12.09.31.006000 13-11月-03 12.09.31.006000 下午 +08:

    下午 00

    SQL> alter session set time_zone='-11:00';

    会话已更改。

    SQL> select localtimestamp,to_char(sysdate,'DD-MM-YYYY HH:MI:SS AM') "SYSDATE" from dual;

    LOCALTIMESTAMP SYSDATE

    ---------------------------- ------------------------

    12-11月-03 05.11.31.259000 13-11-2003 12:11:31 下午

    下午

    SQL>

    8、months_between()判断两个日期之间的月份数量

    number_value:=months_between(date_value,date_value)

    SQL> select months_between(sysdate,date'1971-05-18') from dual;

    MONTHS_BETWEEN(SYSDATE,DATE'1971-05-18')

    ----------------------------------------

    389.855143

    SQL> select months_between(sysdate,date'2001-01-01') from dual;

    MONTHS_BETWEEN(SYSDATE,DATE'2001-01-01')

    ----------------------------------------

    34.4035409

    SQL>

    9、next_day()给定一个日期值,返回由第二个参数指出的日子第一次出现在的日期值(应返回相应日子的名称字符串)

    與周相關日期函數

    1.查询某周的第一天

    select trunc(decode(ww, 53, to_date(yy || '3112', 'yyyyddmm'), to_date(yy || '-' || to_char(ww * 7), 'yyyy-ddd')), 'd') last_day

    from (select substr('2004-32', 1, 4) yy, to_number(substr('2004-32', 6)) ww

    from dual)

    select trunc(to_date(substr('2003-01',1,5)||to_char((to_number(substr('2003-01',6)))*7),'yyyy-ddd'),'d')-6 first_day from dual

    select min(v_date) from

    (select (to_date('200201','yyyymm') + rownum) v_date

    from all_tables

    where rownum < 370)

    where to_char(v_date,'yyyy-iw') = '2002-49'

    2.查询某周的最后一天

    select trunc(decode(ww, 53, to_date(yy || '3112', 'yyyyddmm'), to_date(yy || '-' || to_char(ww * 7), 'yyyy-ddd')), 'd') - 6 first_day

    from (select substr('2004-33', 1, 4) yy, to_number(substr('2004-33', 6)) ww

    from dual)

    select trunc(to_date(substr('2003-01',1,5)||to_char((to_number(substr('2003-01',6)))*7),'yyyy-ddd'),'d') last_day from dual

    select max(v_date) from

    (select (to_date('200408','yyyymm') + rownum) v_date

    from all_tables

    where rownum < 370)

    where to_char(v_date,'yyyy-iw') = '2004-33'

    3.查询某周的日期

    select min_date, to_char(min_date,'day') day from

    (select to_date(substr('2004-33',1,4)||'001'+rownum-1,'yyyyddd') min_date

    from all_tables

    where rownum <= decode(mod(to_number(substr('2004-33',1,4)),4),0,366,365)

    union

    select to_date(substr('2004-33',1,4)-1||

    decode(mod(to_number(substr('2004-33',1,4))-1,4),0,359,358)+rownum,'yyyyddd') min_date

    from all_tables

    where rownum <= 7

    union

    select to_date(substr('2004-33',1,4)+1||'001'+rownum-1,'yyyyddd') min_date

    from all_tables

    where rownum <= 7

    )

    where to_char(min_date,'yyyy-iw') ='2004-33'

    展开全文
  • Oracle自动插入当前时间的年月日YYYY-MM-DD格式的实现Oracle没有date()函数,sysdate函数的值是包括时分秒的,要实现插入当前时间默认值还真麻烦.只好自己写储存过程,而字段默认值里面又不能调用储存过程,还得写个...

    Oracle自动插入当前时间的年月日YYYY-MM-DD格式的实现

    Oracle没有date()函数,sysdate函数的值是包括时分秒的,要实现插入当前时间默认值还真麻烦.

    只好自己写储存过程,而字段默认值里面又不能调用储存过程,还得写个触发器!而储存过程里面取出来的sysdate前几位的只却变成17-11月-07的格式了,不是自己想要的,2007-11-17的格式,又得单独取年月日再组合起来,这样一来返回值就不能是日期类型而要字符类型了.

    一个字,烦!不过还是把他实现了.下面把代码给大家分享一下,如果有更好的方法麻烦告知.

    1.储存过程

    CREATE OR REPLACE FUNCTION "GET_DATE" RETURN VARCHAR2

    IS

    yyyy     varchar2(36);

    mm     varchar2(36);

    dd     varchar2(36);

    tempdate   varchar2(36);

    BEGIN

    tempdate := '';

    select to_char(to_date(sysdate),'YYYY') into yyyy from dual;

    select to_char(to_date(sysdate),'MM') into mm from dual;

    select to_char(to_date(sysdate),'DD') into dd from dual;

    tempdate := substr(yyyy,1,4)|| '-'||

    substr(mm,1,2)|| '-'||

    substr(dd,1,2)

    ;

    return tempdate;

    END;

    2.触发器

    CREATE OR REPLACE TRIGGER STATWEEK_tg

    --STATWEEK fdate 的触发器

    BEFORE INSERT ON STATWEEK FOR EACH ROW

    BEGIN

    SELECT get_date INTO :NEW.fdate FROM DUAL;

    END;

    注:这里的STATWEEK为对应的数据表 fdate为自动增长的字段,get_date为对应的储存过程名.

    3.数据表

    -- Create table

    create table STATWEEK

    (

    星期一   VARCHAR2(20) default 0,

    星期二   VARCHAR2(20) default 0,

    星期三   VARCHAR2(20) default 0,

    星期四   VARCHAR2(20) default 0,

    星期五   VARCHAR2(20) default 0,

    星期六   VARCHAR2(20) default 0,

    星期日   VARCHAR2(20) default 0,

    TWEEK VARCHAR2(10),

    ADMIN VARCHAR2(50),

    FDATE VARCHAR2(20)

    )

    展开全文
  • 环境:Oracle 10g,11g问题重现:PL/SQL中命令窗口下,发现存储... select sysdate from dual;SYSDATE-----------2014-12-18Executed in 0 secondsSQL> set serveroutput onSQL> declarepro_date date;begins...
  • (1)用作日期转换:to_char(date,'格式');select to_date('2005-01-01 ','yyyy...select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;(2)处理数字:to_char(number,'格式');select to_char(88877) from dual...
  • 一、DD-MM-RRSELECT TO_CHAR(TO_DATE('12-01-49', 'DD-MM-RR'), 'YYYYMMDD') "Year",TO_CHAR(TO_DATE('12-01-98', 'DD-MM-RR'), 'YYYYMMDD') "Year" FROM DUAL; 二、DD-MM-YYSELECT TO_CHAR(TO_DATE('12-01-49', 'DD...
  • select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss’) as nowTime from dual; //日期转化为字符串 select to_char(sysdate,‘yyyy’) as nowYear from dual; //获取时间的年 select to_char(sysdate,‘mm’) as ...
  • select to_char(sysdate), 'yyyy-mm-dd hh:mm:ss') from dual; 原来是Oracle查询日期格式的数据的时候,java与oracle存在差异, 1、java中分钟是mm 2、Oracle中分钟是mi,月份是mm,所以"yyyy-mm-dd hh:mm:ss"展示...
  • to_char函数对数字的转换:http://space.itpub.net/?uid-685769-action-viewspace-itemid-742917to_char的fm:http://space.itpub.net/685769/viewspace-7429151)scc或cc显示...select to_char(sysdate,'scc yyyy-m...
  • 1.日期转化为字符串(以2016年10月20日为例)select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') strDateTime from dual; --获取年-月-日 时:分:秒--显示结果为:2016-10-20 12:35:21select to_char(sysdate,'yyyymmdd ...
  • 1、获得时间差毫秒数: select ceil((To_date('2008-05-02 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2008-04-30 23:59:59' , 'yyyy-mm-dd hh24-mi-ss')) * 24 * 60 * 60 * 1000) 相差豪秒数 FROM DUAL;...
  • select to_char(sysdate,'YYYY-MM-DD HH12:MI:SS AM')from dual;TO_CHAR(SYSDATE,'YYYY-MM-DDHH1------------------------------2007-06-29 02:50:06 下午2》以24小时制显示SQL>select to_char(sysdate...
  • select to_char(sysdate,'YYYY-MM-DD HH12:MI:SS AM')from dual;TO_CHAR(SYSDATE,'YYYY-MM-DDHH1------------------------------2007-06-29 02:50:06 下午2》以24小时制显示SQL> select to_char(sysdate...
  • 加法select sysdate,add_months(sysdate,12) from dual; --加1年select sysdate,add_months(sysdate,1... --加1月select sysdate,to_char(sysdate+7,'yyyy-mm-dd HH24:MI:SS') from dual; --加1星期select sysdate,t...
  • to_date()最常用的用法就是将字符串转化为timestamp类型的日期如果小时大于12,就认为是24小时时间格式,需要用HH24,否则会报错,如下SELECT SYSDATE,TO_DATE('2019-03-20 23:14:12','YYYY-MM-DD HH24:MI:SS') FROM...
  • to_date(to_char(a.CREATION_TIME,'yyyy-MM-dd'), 'yyyy-mm-dd hh24:mi:ss') 运行结果: 2021-08-30 00:00:00 1、TO_CHAR 函数 语法为:TO_CHAR(x[,format])。它可以将时间值转换为字符串。format 就是时间格式化...
  • 我没有PLSQL的实现将是:SELECT to_date('1900-01-01','YYYY-MM-DD') + (rownum - 1) AS DT_CAL,rownum AS NUM_JOURFROM dualCONNECT BY to_date('1900-01-01','YYYY-MM-DD') + (rownum - 1) <=to_date('...
  • select to_char(trunc(add_months(sysdate,-1),'mm'),'yyyymmdd') first_day,to_char(last_day(add_months(sysdate,-1)),'yyyymmdd') last_day from dual;oracle不区分大小写,MMmm效果一样。一.to_char()函数to_...
  • trunc取得是天(可比较),而to_char取得是数值(可计算): 但trunc(date) 具有与to...trunc(sysdate,'yyyy') 取当年的第一天 to_char(sysdate,'yyyy') 取当年数值 trunc(sysdate,'iyyy') 取上年的最后一天 to_char(s.
  • SELECT TO_CHAR(SYSDATE- INTERVAL '1' MONTH,'yyyy-MM')||'-01', TO_CHAR(SYSDATE - INTERVAL '12' MONTH,'yyyy-MM')||'-01' FROM DUAL INTERVAL '1' MONTH 中的Month还可以是minute,hour,day,year 。 ...
  • oracle、sqlserver、mysql常用函数对比[to_charto_number、to_date]oracle --> mysqlto_char(sysdate,'yyyy-mm-dd')-->date_format(sysdate(),'%Y...
  • 以下的文章是通过Oracle to_char的用法的相关代码描述来剖析Oracle to_char的用法在实际中的具体应用,以下就是相关内容的详细介绍。以下是文章的具体介绍,望你浏览完以下的内容会有所收获。...
  • Oracle中对时间的操作以及to_charto_date用法总结,所谓带连接符,就是我们to_date的第一个参数的yyyy,mm,dd之间有没有连接符。Oracle时间处理有时候to_charto_...select to_char(sysdate,'yyyy.mm.dd') from ...
  • 0表示:如果参数(double或者float类型)存在数字就显示数字,不存在数字就显示0 9表示:如果参数(double或者float类型)存在数字就显示数字...select to_char(sysdate,‘yy-mm-dd hh24:mi:ss’) from dual //显示:08-11
  • oracle 中 to_date 与 to_char1,to_date() 函数 (俗称: 日期转换函数)格式: to_date(... 即按照第二个参数的格式解释第一个参数.-- 根据时间查询select to_date('2020-11-10,13:25:59','yyyy-mm-dd,hh24:mi:ss') f...
  • 1、oracle 取当前日期时间的前一天前一小时前一分钟前一秒SELECT '当前时间' TITLE, TO_CHAR(SYSDATE, 'yyyy-mm-dd hh24:mi:ss') TIMEFROM DUALUNION ALLSELECT '前一天前一小时前一分钟前一秒' TITLE,TO_CHAR...
  • The following are number examples for the to_char function.to_char(1210.73, '9999.9')would return '1210.7'to_char(1210.73, '9,999.99')would return '1,210.73'to_char(1210.73, '$9...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 36,999
精华内容 14,799
关键字:

to_char(sysdate,'yyyy-mm-dd')