database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
ㆍDB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DB2 Q&A 1619 게시물 읽기
No. 1619
날짜관련문제...
작성자
윤동민(tersa01)
작성일
2008-05-29 15:00
조회수
11,951

 select (select displayname from userinfo_temp where employeenumber = b.touser) touser,(select uname from mgroup where uuid = b.rolecd) rolecd,b.startdate,b.enddate,a.reasoncd,a.memo  from mrole_entrust_sts a, mrole_entrust b where a.seq=b.seq and b.seq=6


저기서 a.startdate 의 결과값이 

200805011200  이렇게 들어가있습니다. varchar(14)형식으로요.

이걸... 최소한..  2008/05/01 12:00 이렇게 변경할수 없을까요..

아니면 2008년 05월 01일 12시 00분 이 최고이긴한데...  이렇게 바꿀수있다면 좋겠고요..

디비에서 바로 저결과를 뽑아야합니다.
엄청 번거롭네요... 

타임스템프를썼어야하는데.. 지금은 바꿀수도 없네요...

이 글에 대한 댓글이 총 3건 있습니다.

function에서 substr 부분을 사용하거나 function을 만들어 사용해보세요. 



drop function td01

@

create function td01(v1 varchar(12))

returns varchar(16)

language sql

  return

    substr(replace(char(date(timestamp(v1||'00'))),'-','/')||' '||char(time(timestamp(v1||'00'))),1,16)

@


db2 "values td01('200805011200')"

1              

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

2008/05/01 12:00


조는 냥이님이 2008-05-29 15:33에 작성한 댓글입니다.
이 댓글은 2008-05-29 15:35에 마지막으로 수정되었습니다. Edit

제가 초보인지라...
function 이 뭔지도 모르거든요..


select (select displayname from userinfo_temp where employeenumber = b.touser) touser,(select uname from mgroup where uuid = b.rolecd) rolecd,b.startdate,b.enddate,a.reasoncd,a.memo  from mrole_entrust_sts a, mrole_entrust b where a.seq=b.seq and b.seq=6


select startdate from mrole_entrust_sts

결론적으로 날짜출력 부분은 이자리입니다..

2008년 05월 01일 12시 00분 이렇게....

이쿼리를 이용해서 한번 해주시면 안될까요..?

이게 도대체 어떻게 되는건지 못알아 먹겠네요.

고맙습니다. 매번이렇게 도와주시니 ^^

제가 디비2는 처음이고... 업무에 투입되다보니 아무것도 모르겠네요 ^^
디비2가 아니라도 마찬가지지만요 ^^

윤동민(tersa01)님이 2008-05-29 15:59에 작성한 댓글입니다.
이 댓글은 2008-05-29 16:06에 마지막으로 수정되었습니다.

select (select displayname from userinfo_temp where employeenumber = b.touser) touser,
(select uname from mgroup where uuid = b.rolecd)rolecd,
--b.startdate,
substr(replace(char(date(timestamp(b.startdate||'00'))),'-','/')||' '||char(time(timestamp(b.startdate||'00'))),1,16) sdt,

--b.enddate,
substr(replace(char(date(timestamp(b.enddate||'00'))),'-','/')||' '||char(time(timestamp(b.enddate||'00'))),1,16) edt,
a.reasoncd,a.memo  

from mrole_entrust_sts a, mrole_entrust b 
where a.seq=b.seq and b.seq=6
조는 냥이님이 2008-05-29 16:17에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
162380040e14 에러의 예외문은 못하나요?
teduri
2008-06-02
10977
1622가로로 나오는 값을 세로로 나오게 하고싶습니다. [3]
조동연
2008-06-02
13060
1620IDENTITY ALWAYS 컬럼 값 받아오는 방법 [1]
조성환
2008-05-30
11438
1619날짜관련문제... [3]
윤동민
2008-05-29
11951
1618스토어드프로시저 빌드관련 문제 [11]
박경욱
2008-05-29
11010
1617조인 관련 질문드립니다. [3]
이도희
2008-05-27
10587
1616디비쿼리문좀 만들어주세요~ [4]
윤동민
2008-05-26
11494
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다