InterBase에서 SubStr을 사용하기위해 아래함수를 썼습니다
DECLARE EXTERNAL FUNCTION substr
STRING(256), SMALLINT, SMALLINT
RETURNS CSTRING(80) FREE_IT
ENTRY_POINT 'IB_UDF_substr' MODULE_NAME 'ib_udf';
SQL문에서 Select이후의 Substr은 잘 작동되는데
왜 Group By절에서는 에러가 나나요
예)실행됨
SELECT SUBSTR(CLOSEDT,1,6), CUSCD, SUM(SAMT) SAMT
FROM FSALE
GROUP BY CLOSEDT, CUSCD
예)실행안됨
SELECT SUBSTR(CLOSEDT,1,6), CUSCD, SUM(SAMT) SAMT
FROM FSALE
GROUP BY SUBSTR(CLOSEDT,1,6), CUSCD
작성하신 코드와 같이 컬럼에 함수를 쓰는 경우라면 알리아스를 사용하고 그 이름을 써보시면 될 것 같습니다.
SELECT SUBSTR(CLOSEDT,1,6) SUBCLOSEDT, CUSCD, SUM(SAMT) SAMT
FROM FSALE
GROUP BY SUBCLOSEDT, CUSCD
안되면 어쩌지 -_-;
아침햇살 wrote:
> InterBase에서 SubStr을 사용하기위해 아래함수를 썼습니다
>
> DECLARE EXTERNAL FUNCTION substr
> STRING(256), SMALLINT, SMALLINT
> RETURNS CSTRING(80) FREE_IT
> ENTRY_POINT 'IB_UDF_substr' MODULE_NAME 'ib_udf';
>
> SQL문에서 Select이후의 Substr은 잘 작동되는데
> 왜 Group By절에서는 에러가 나나요
>
> 예)실행됨
> SELECT SUBSTR(CLOSEDT,1,6), CUSCD, SUM(SAMT) SAMT
> FROM FSALE
> GROUP BY CLOSEDT, CUSCD
>
>
> 예)실행안됨
> SELECT SUBSTR(CLOSEDT,1,6), CUSCD, SUM(SAMT) SAMT
> FROM FSALE
> GROUP BY SUBSTR(CLOSEDT,1,6), CUSCD
>
>