FireBird Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
파이어버드 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
IBPhoenix
FireBird Main site
볼랜드포럼 광고 모집

FireBird Q&A
[1818] Re:Re:스트어 프로시저 사용법에 대해서 좀 알려주세요~
강재호.만해 [greenuri] 1890 읽음    2006-02-17 09:51
푸른솔 님이 쓰신 글 :
: 1.5에서는 서브쿼리가 안됩니다.
: 그리고 이 Sql문장도 아예 SP로 만들어 놓고 이 SP만 실행시켜 주면 간단할 것 같은데...
:
: select distinct(extract ( day from endtime)) ,
: (Select * from Get_monthly_Report_Element
:                                ( extract ( year from EndTime ),
:                                  extract (month from endtime ),
:                                  extract (  day from endtime ) ,
:                                  extract (  day from endtime )+1 ,
:                                  4)
: )
: from sales
:
:
: 강재호.만해 님이 쓰신 글 :
: : 회사 업무상 보고서 결과를 만드는 쿼리만들어야 하는데
: :
: : 일반 쿼리로는 도저히 해결이 안될것 같아서
: :
: : SP를 만들었습니다.
: :
: : SP에서는 하루 하루에 대한 결과를 만들어 내는데요
: :
: : 이걸 Select문에 연동 시켜서 한달치 결과를 내게 만들려고 할려는데
: :
: : 잘안되네요
: :
: : CREATE PROCEDURE GET_Monthly_Report_Element (GroupYear int, GroupMonth int, GroupDay1 int,GroupDay2 int, GroupHour int)
: : RETURNS (
: :   UsedTime int,
: :   PauseTime int,
: :   Prepay int,
: :   Afterpay int,
: :   Totalpay int,
: :   TimeMember int,
: :   TimeMemberpay int,
: :   ServiceTime int,
: :   Discount int,
: :   Mileage int,
: :   Mileagepay int)
: : AS
: : BEGIN
: :   for select
: :   sum(UsedTime) UsedTime,
: :   sum(PauseTime) PauseTime,
: :   sum(Prepay) Prepay ,
: :   sum(Afterpay) Afterpay,
: :   sum(Totalpay) Totalpay,
: :   sum(TimeMember) TimeMember,
: :   sum(TimeMemberpay) TimeMemberpay,
: :   sum(ServiceTime) ServiceTime,
: :   sum(Discount) Discount,
: :   sum(Mileage) Mileage,
: :   sum(Mileagepay) Mileagepay
: :   FROM sales
: :   WHERE  endtime between
: :          cast (cast (:GroupMonth as Char(2))||'-'||
: :                cast (:GroupDay1 as Char(2))  ||'-'||
: :                cast (:GroupYear as Char(4)) ||' '||
: :                cast (:GroupHour as char(2)) ||':00:00' as Date)
: :          and
: :          cast (cast (:GroupMonth as Char(2))||'-'||
: :                cast (:GroupDay2 as Char(2))||'-'||
: :                cast (:GroupYear as Char(4)) ||' '||
: :                cast (:GroupHour as char(2)) ||':00:00' as Date)
: :
: :     INTO : UsedTime ,  PauseTime ,  Prepay ,  Afterpay ,  Totalpay ,
: :          TimeMember ,   TimeMemberpay ,   ServiceTime ,   Discount ,   Mileage ,  Mileagepay
: :   DO
: :     SUSPEND;
: : END
: :
: : GET_Monthly_Report_Element  이게 하루치 보고서를 만드는 쿼리이고요
: :
: : 사용은 이렇게 합니다.
: :
: : select * from  GET_Monthly_Report (2006 , 2 ,16,17, 1)
: :
: : 이 쿼리를 한달의 날수 만큼 돌려야 됩니다.
: :
: : 그래서 제가 작성한 쿼리가 다음과 같습니다.
: :
: : select distinct(extract ( day from endtime)) ,
: : (Select * from Get_monthly_Report_Element
: :                                ( extract ( year from EndTime ),
: :                                  extract (month from endtime ),
: :                                  extract (  day from endtime ) ,
: :                                  extract (  day from endtime )+1 ,
: :                                  4)
: : )
: : from sales
: :
: : 이렇게 해서 전체 데이타를 가져 오게 할려고 하는데요
: :
: : 하루치 그러니깐 Get_monthly_Report_Element 가 개별적으로는 잘 작동 하는데
: :
: : 저렇게 쿼리에 붙여 놓으니 작동이 안되고 있습니다.
: :
: : 작업 환경은 FireBird 1.5를 이용하고 있습니다.
: :
: : SP를 호출하는 부분에서 문법 에러가 발생 하는데요 도저히 뭐가 잘못 된건지 알수가 없네요
: :
: : 도움 바랍니다~

IBExpert에서 문법에러를 보고 하고 있습니다.

select distinct(extract ( day from endtime)) ,
(Select * from Get_monthly_Report_Element
                               ( extract ( year from EndTime ),
                                 extract (month from endtime ),
                                 extract (  day from endtime ) ,
                                 extract (  day from endtime )+1 ,
                                 4)
)
from sales

Invalid token Dynamic SQL Error
SQL error code = -104 Token unknown - line 2, char 9 *.

SP로 등록 시킨 상태에서 저렇게 나오네요 Ib Expoert가 구 버젼이라서 그런가요?

아니면 FireBird가 지원을 못해 주는 건가요?

아니면 아에 쿼리가 틀린건지도 ...

+ -

관련 글 리스트
1815 스트어 프로시저 사용법에 대해서 좀 알려주세요~ 강재호.만해 1625 2006/02/16
1817     Re:스트어 프로시저 사용법에 대해서 좀 알려주세요~ 푸른솔 1870 2006/02/17
1818         Re:Re:스트어 프로시저 사용법에 대해서 좀 알려주세요~ 강재호.만해 1890 2006/02/17
1819             Re:Re:Re:스트어 프로시저 사용법에 대해서 좀 알려주세요~ 푸른솔 1755 2006/02/17
1820                 Re:Re:Re:Re:스트어 프로시저 사용법에 대해서 좀 알려주세요~ 강재호.만해 2224 2006/02/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.