오라클. 날짜와 시간을 어떻게 출력합니까?
내 방문 표는 다음과 같습니다.
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는 DATE 및 TIMESTAMP 리터럴을 사용하는 것이 좋습니다.
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
'programing' 카테고리의 다른 글
Angular 8에서 서비스를 이용한 행동 주체 구현 방법 (0) | 2023.06.29 |
---|---|
HttpServerUtility에 액세스하는 방법.스레드 또는 타이머의 MapPath 메서드? (0) | 2023.06.29 |
Firebase를 사용하여 이름 속성별로 사용자 가져오기 (0) | 2023.06.29 |
T-SQL을 사용하여 날짜/시간 가져오기 (0) | 2023.06.29 |
NSDictionary에 부울 값을 추가하려면 어떻게 해야 합니까? (0) | 2023.06.24 |