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
운영게시판
최근게시물
Cache Q&A 382 게시물 읽기
No. 382
[SQL,COS] CEIL 함수 만들기
작성자
POSTRDB
작성일
2009-03-30 13:44ⓒ
2009-04-27 16:26ⓜ
조회수
4,675

Cache SQL에서 올림 기능을 하는 CEIL 함수를 만들어 쓰고 싶은 경우에 다음과 같이 한번 해보세엽.


우선 ROUND라는 함수가 반올림을 해 주므로, 이 함수를 이용해서 적당한 Method를 추가해 줍니다.

Class User.SQLFunctions Extends %RegisteredObject [ProcedureBlock]

{

 ClassMethod CEIL(var As %Numeric) As %Integer [ Language = cache, SqlName = CEIL, SqlProc ]

{

 

&sql(select distinct Round(:var+0.5,0) into :ceil from dual)

 quit ceil 

}

}


참고로, 위 CEIL 예제는 dual이라는 한 row를 가지는 테이블이 있다고 가정한 것입니다.

dual 테이블을 만들기 귀찮으신 분은, 아래와 같은 COS로 작성한 함수를 쓰시면 되겠습니다.


ClassMethod CEILCOS(var As %Numeric) As %Integer [ Language = cache, SqlName = CEIL, SqlProc ]

{

  set ceil=$NUMBER(var+0.5,0)

  quit ceil

}



즐코딩 하세엽~

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

예전 게시판을 뒤지다가 $System.SQL.CEILING() 함수가 있는 것을 발견했습니다. 아래 예제 참고하시기 바래욤..

> write $System.SQL.CEILING(-1.99)
-1

지나다가님이 2009-03-30 13:47에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
385[설치] Cache ODBC 레지스트리 등록하기
POSTRDB
2009-03-30
5818
384[COS] 코드에서 시스템 명령 호출하기 [1]
POSTRDB
2009-03-30
3664
383[COS]유니코드 문자 2바이트로 계산하기
POSTRDB
2009-03-30
4040
382[SQL,COS] CEIL 함수 만들기 [1]
POSTRDB
2009-03-30
4675
381[설치] RedHat에서 Shared Memory 늘리기
POSTRDBCOKR
2009-03-26
4793
380[COS] LPAD함수 만들기
POSTRDBCOKR
2009-03-26
3896
379가장 간단한 Java 어플리케이션 예제
POSTRDBCOKR
2009-03-26
4330
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2019 DSN, All rights reserved.
작업시간: 0.073초, 이곳 서비스는
	PostgreSQL v11.5로 자료를 관리합니다