Q&A

  • SQL에서 COUNT(*) 함수를 이용할때 그 값을 넘겨받으려면 ?
한동안 파라독스를 이용하다 인터베이스를 이용하여 SQL문을 공부하려니 어려운점이

한둘이 아니네요 ㅠ.ㅠ



SELECT 문을 이용하여 조건에 맞는 검색자료의 숫자를 알아내려면 다음과 같이 하더

군요.



IBQuery1.SQL.Clear;

IBQuery1.SQL.Add('SELECT COUNT(*) FROM CUSTOMER WHERE CODE="0001"');

IBQuery1.SQL.ExecSQL;



물론 ISQL에서 테스트를 했습니다.



SELECT COUNT(*) FROM CUSTOMER WHERE CODE='0001';



실행시키면 이런식이던가 (?) 하여튼 결과 값이 ISQL에서는 나오더군요.



COUNT(*)

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

2



근데 이 2 라는 값을 프로그래밍시 되돌려 받고 싶은데 어떻게 해야 하는지를

모르겠어요. 파라독스 같은데서는 다음과 같이 하겠죠. 답변을 좀 부탁 드리겠습니다



필터나 스코프 설정후...

Num := TTable1.RecordCount;



부탁 드립니다.





3  COMMENTS
  • Profile
    윤규성 2000.08.13 06:46
    윤규성 wrote:

    > 한동안 파라독스를 이용하다 인터베이스를 이용하여 SQL문을 공부하려니 어려운점이

    > 한둘이 아니네요 ㅠ.ㅠ

    >

    > SELECT 문을 이용하여 조건에 맞는 검색자료의 숫자를 알아내려면 다음과 같이 하더

    > 군요.

    >

    > IBQuery1.SQL.Clear;

    > IBQuery1.SQL.Add('SELECT COUNT(*) FROM CUSTOMER WHERE CODE="0001"');

    > IBQuery1.SQL.ExecSQL;

    >

    > 물론 ISQL에서 테스트를 했습니다.

    >

    > SELECT COUNT(*) FROM CUSTOMER WHERE CODE='0001';

    >

    > 실행시키면 이런식이던가 (?) 하여튼 결과 값이 ISQL에서는 나오더군요.

    >

    > COUNT(*)

    > ----------------

    > 2

    >

    > 근데 이 2 라는 값을 프로그래밍시 되돌려 받고 싶은데 어떻게 해야 하는지를

    > 모르겠어요. 파라독스 같은데서는 다음과 같이 하겠죠. 답변을 좀 부탁 드리겠습니다

    >

    > 필터나 스코프 설정후...

    > Num := TTable1.RecordCount;

    >

    > 부탁 드립니다.

    >

    >

  • Profile
    여노기 2000.08.13 00:35
    윤규성 wrote:

    > 한동안 파라독스를 이용하다 인터베이스를 이용하여 SQL문을 공부하려니 어려운점이

    > 한둘이 아니네요 ㅠ.ㅠ

    >

    > SELECT 문을 이용하여 조건에 맞는 검색자료의 숫자를 알아내려면 다음과 같이 하더

    > 군요.

    >

    > IBQuery1.SQL.Clear;

    > IBQuery1.SQL.Add('SELECT COUNT(*) FROM CUSTOMER WHERE CODE="0001"');

    > IBQuery1.SQL.ExecSQL;

    >

    > 물론 ISQL에서 테스트를 했습니다.

    >

    > SELECT COUNT(*) FROM CUSTOMER WHERE CODE='0001';

    >

    > 실행시키면 이런식이던가 (?) 하여튼 결과 값이 ISQL에서는 나오더군요.

    >

    > COUNT(*)

    > ----------------

    > 2

    >

    > 근데 이 2 라는 값을 프로그래밍시 되돌려 받고 싶은데 어떻게 해야 하는지를

    > 모르겠어요. 파라독스 같은데서는 다음과 같이 하겠죠. 답변을 좀 부탁 드리겠습니다

    >

    > 필터나 스코프 설정후...

    > Num := TTable1.RecordCount;

    >

    > 부탁 드립니다.

    >

    >



    // 별도의 필드명을 지정해 주고 그 필드를 읽으면 됩니다.

    IBQuery1.SQL.Clear;

    IBQuery1.SQL.Add('SELECT COUNT(*) CNT FROM CUSTOMER WHERE CODE="0001"');

    IBQuery1.SQL.OPEN;



    EDIT1.TEXT := IBQuery1.FindField('CNT').AsString;



  • Profile
    최석기 2000.08.13 00:32
    윤규성 wrote:

    > 한동안 파라독스를 이용하다 인터베이스를 이용하여 SQL문을 공부하려니 어려운점이

    > 한둘이 아니네요 ㅠ.ㅠ

    >

    > SELECT 문을 이용하여 조건에 맞는 검색자료의 숫자를 알아내려면 다음과 같이 하더

    > 군요.

    >

    > IBQuery1.SQL.Clear;

    > IBQuery1.SQL.Add('SELECT COUNT(*) FROM CUSTOMER WHERE CODE="0001"');

    > IBQuery1.SQL.ExecSQL;

    >

    > 물론 ISQL에서 테스트를 했습니다.

    >

    > SELECT COUNT(*) FROM CUSTOMER WHERE CODE='0001';

    >

    > 실행시키면 이런식이던가 (?) 하여튼 결과 값이 ISQL에서는 나오더군요.

    >

    > COUNT(*)

    > ----------------

    > 2

    >

    > 근데 이 2 라는 값을 프로그래밍시 되돌려 받고 싶은데 어떻게 해야 하는지를

    > 모르겠어요. 파라독스 같은데서는 다음과 같이 하겠죠. 답변을 좀 부탁 드리겠습니다

    >

    > 필터나 스코프 설정후...

    > Num := TTable1.RecordCount;

    >

    > 부탁 드립니다.

    >

    >



    다음과 같이 하면 값을 가져오죠 ^^



    Num := IBQuery1.FieldByName('Count(*)').AsInteger;