헬프미 님이 쓰신 글 :
:
: 사용한 쿼리는 아래와 같습니다.
: SELECT SubStr(CAST(current_timestamp AS CHAR(10)),3,2)||SubStr(current_timestamp,6,2)
: ||CAST(GEN_ID(CUSTID_GEN,1) AS CHAR(4))
: From rdb$database
:
:
: 제가 원하는 것은 날짜의 년 뒤 2자리와 일련번호 4자리입니다.
: 그런데 날짜의 경우에는 쿼리문으로 볼떄에는 2003년 1월 3일.. 이런식인데..
: 실제 캐스팅이나 SUbStr을 사용하면 02-jan-2003 ... 으로 나오고
: 실제 문자열 위치도 맞지않더라구요...
:
: 또한가지 질문은 제너레이터를 통해 만약 2 라면 전 이것을
: 0002로 4자리로 맞추고 싶습니다. 즉 앞의 공간을 0으로 채워
: 4자리를 맞추는 것이지요...
:
: 그럼 도와주세요..
안녕하세요. 까막입니다.
한참 지난 질문이지만, 다른 분들이 검색을 할때 도움이 되길 바라면서 답글 남깁니다.
문자열 채우기를 검색하다 없어서 함수를 살펴보고 찾은 거 거든요. ^^
모두 FreeUDFLIb에 있는 함수들을 사용하시면 되겠는데요. ^^
일단 날짜의 연도를 가지고 오는거요.
이거야 다들 아시겠지만... 답글을 다는김에... 하하.
F_Year(날짜) 를 실행하시면 반환값으로 연도를 반환하거든요. 정수형.
이걸 CAST 하셔서 사용하시면 되겠네요.
그리고, 앞뒤의 공간을 특정 문자로 채우는 거요.
F_PadLeft(채울 문자열,채울 문자,문자열 길이) 이렇게 사용하시면 되겠네요.
F_PadRight(...) 앞이냐 뒤냐의 차이니까 아시겠지요? ^^
예를 들어, F_PadLeft('AA','0',4) 이렇게 실행하면 '00AA' 가 반환됩니다.
위대한 단군혼이 살아있는 나라.... 대한민국.
|