programing

오라클. 날짜와 시간을 어떻게 출력합니까?

css3 2023. 6. 29. 20:17

오라클. 날짜와 시간을 어떻게 출력합니까?

내 방문 표는 다음과 같습니다.

insert into Visit
values(12, to_date('19-JUN-13', 'dd-mon-yy'), to_date('19-JUN-13 12:00 A.M.' , 'dd-mon-yy hh:mi A.M.'));
insert into Visit
values(15, to_date('20-JUN-13', 'dd-mon-yy'), to_date('20-JUN-13 02:00 A.M.' , 'dd-mon-yy hh:mi A.M.'));
insert into Visit
values(18, to_date('21-JUN-13', 'dd-mon-yy'), to_date('21-JUN-13 10:30 A.M.' , 'dd-mon-yy hh:mi A.M.'));

쿼리를 시도할 때:select * from Visit이해합니다:

SQL> select * from visit;

   SLOTNUM DATEVISIT ACTUALARRIVALTIME                                                                                                                                                                                                                                                                                                                                                                                 
---------- --------- ------------------------------                                                                                                                                                                                                                                                                                                                                                                     
        12 19-JUN-13 19-JUN-13                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
        15 20-JUN-13 20-JUN-13                                                                                                                                                                                                       
        18 21-JUN-13 21-JUN-13                                                                                                                                                                                                      

SQL> spool off;

왜 시간이 없는 거지?

오라클DATE열에는 초 단위로 정확한 날짜/시간 값이 저장됩니다.날짜 형식을 지정하는 데 사용합니다.

SELECT
  SLOTNUM,
  TO_CHAR(DATEVISIT, 'MM/DD/YYYY') AS VisitDisp
  TO_CHAR(ACTUALARRIVALTIME, 'MM/DD/YY HH:MI:SS A.M.') AS ArrDisp
FROM Visit

A.M.형식 코드 산출량A.M.또는P.M.때에 따라사용할 수 있습니다.P.M.마찬가지로 -- 둘 중 하나가 작동합니다.

스크립트에 날짜 값을 삽입할 때 IMO는 DATETIMESTAMP 리터럴을 사용하는 것이 좋습니다.

INSERT INTO Visit VALUES (
  12,
  DATE '2013-06-19',
  TIMESTAMP '2013-06-19 00:00:00');

INSERT INTO Visit VALUES (
  12,
  DATE '2013-06-20',
  TIMESTAMP '2013-06-20 02:00:00');

INSERT INTO Visit VALUES (
  12,
  DATE '2013-06-21',
  TIMESTAMP '2013-06-21 10:30:00');

"PM" 시간에는 24시간 시계를 사용하십시오.

-- Time for the third column is 4:25 PM
INSERT INTO Visit VALUES (
  12,
  DATE '2013-06-22',
  TIMESTAMP '2013-06-22 16:25:00');

다음과 같이 모든 날짜에 적용되는 형식을 설정할 수도 있습니다.

ALTER SESSION SET NLS_DATE_FORMAT = 'DD-MON-YYYY HH:MI:SS PM';

그런 식으로, 원래 쿼리는 사용하지 않고 원하는 형식으로 날짜를 출력합니다.TO_CHAR일반적인 기본 형식으로 되돌리려면 다음을 수행합니다.

ALTER SESSION SET NLS_DATE_FORMAT = 'DD-MON-RR';

인스턴스의 기본값으로 설정된 오라클 날짜 형식입니다.

더 많든 적든 볼 수 있도록 형식을 적절하게 지정해야 합니다.다음과 같은 것:

select to_char( datevisit, 'dd-mon-yy hh24:mi:ss' ) from visit

Oracle은 내부적으로 'DD-Mon-YY' 형식을 따라 데이터베이스에 저장합니다.그래서 그것은 돌아옵니다.'DD-Mon-Y

날짜 형식을 시간 단위(분)와 초 단위(초 단위)로 지정하려면 다음과 같이 지정합니다.세션에서 NLS_DATE_FORMAT를 변경할 수 있습니다.

해당 인스턴스에 대한 올바른 프레젠테이션 용도에 대해 쿼리하려는 경우.TO_char 함수를 사용하여 필요한 형식으로 변환합니다.

SELECT slotnum, TO_CHAR (datevisit, 'DD-MON-YY ') "DATEVISIT",
       TO_CHAR (actualarrivaltime, 'DD-MON-YY HH:MI:SS AM') "ACTUALARRIVALTIME"
  FROM visit

위의 질문이 당신이 원하는 대로 출력되기를 바랍니다.

사용 중인 암묵적 날짜 변환에 의존하고 있습니다(세션에 따라 다르지만 DB 기본값에서 상속될 수 있음).NLS_DATE_FORMAT설정 - 이 경우에는 그렇게 보입니다.DD-MON-RR.

사용할 수 있습니다.to_char형식을 지정합니다(예:

select to_char(actualarrivaltime, 'DD-MON-YYYY HH:M:SS PM') from ..

날짜/시간 형식 모델은 설명서에 설명되어 있습니다.

일반적으로 충동적인 변환에 의존하지 않는 것이 좋습니다.지금 원하는 것을 얻더라도 세션별로 다를 수 있으므로 다른 클라이언트의 다른 사용자가 다른 것을 볼 수 있습니다.이것은 단지 잘못 보일 뿐만 아니라 실패를 야기할 수 있습니다.다음을 사용하여 항상 날짜 및 숫자 형식 지정to_date,to_char,to_timestamp기타.

select localtimestamp from dual;

언급URL : https://stackoverflow.com/questions/17223226/oracle-how-to-output-date-and-time