回答

收藏

带有sysdate的to_date函数

技术问答 技术问答 49 人阅读 | 0 人回复 | 2023-09-13

select TO_CHAR(to_date(sysdate, 'DD-MON-YYYY'), 'DAY') FROM DUAL; 8 }: d# A+ I. k8 K- f* x- f

& x: E0 a! ^7 P9 {6 r当我运行此查询时,输出为:SUNDAY。但我们知道今天是星期二(2013年1月1日)。和/ g0 ]( E4 @1 Q8 q' Q% C2 f: K( f
然后将查询更改为
, @/ K9 a. r' K. V3 uselect TO_CHAR(to_date('01-JAN-2013', 'DD-MON-YYYY'), 'DAY') FROM DUAL;1 K3 z) q2 F* ^
0 Q! K; t$ p% m
答案是:星期二。
7 b( g' ^  _0 t* p# p7 U) e7 L然后将查询更改为* L# L0 H4 b4 q' P. G
select TO_CHAR(to_date(sysdate+1, 'DD-MON-YYYY'), 'DAY') FROM DUAL;; H; ?) Y( K- `+ d& w5 J* H8 ]
- E. S  z3 `$ ?0 O  h
答案是:星期一。/ f2 G2 W; G0 R7 Y" G9 s+ d
当我使用sysdate时,为什么将SUNDAY显示为输出?
0 k: v0 Z* ^" _3 k  A我是oracle db的新手。请帮我。6 L6 M, k' Z+ t4 |; P4 L
                5 d5 E5 I- a5 `4 C1 x( P6 Y! m
解决方案:
! _3 }" \1 Q* ?4 l; D                4 t6 D# v1 g# s  @" l
6 ?9 s7 I* v4 Q$ X1 ?6 Y  L

/ q' B& |2 U1 ~  X, B/ s. j                用这个:5 v% n' @& I% ?3 I7 b& C( B% u8 Y
select TO_CHAR(sysdate, 'DAY') FROM DUAL;
. T7 o" b# E4 e* n2 l
) f9 D8 Q8 h1 m% I! \3 g% W+ B您正在使用此:
' D# o; g7 i8 F, b to_date(sysdate, 'DD-MON-YYYY') . u  q( l1 s$ k$ X# R

8 l' m, g5 v* }+ I  K1 I$ [3 n给您日期= 1/1/0013,即星期天
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则