Q&A

  • [Q]문자열비교 와 query의 속도 비교???
클릭해 주셔서 고맙습니다. 꾸뻑...



속도 차이를 알고 싶습니다.

문자열 비교(if) vs query



ex)

cnt := 0;



query1.first;

for i:=0 to query1.recordcount do

begin

if query1.feildbyname('a').asstring = '찾는문자열' then

inc(cnt, 1)

else

query1.next;

end;



vs



query1.close;

query1.sql.clear;

query1.sql.add(' select count(*) as tmp from"데이블이름"');

query1.sql.add(' where a = '찾는문자열'');

query1.open;



어떤것이 더 빠른가요?



한수 갈켜주세영~~~



그럼, 20000



i believe i can fly~~

1  COMMENTS
  • Profile
    하얀까마귀 2001.09.03 23:34
    안녕하세요 하얀까마귀 입니다.



    이건 좀 비교라는것 자체가 무리가 있습니다..



    첫째로 데이타 베이스에서 데이타를 불러오는데 걸리는 시간을 무시하고



    이러한 비교를 한다는건 좀 그렇네요..



    문제가.. 데이타가 천만건에서 데이타를 불러와서 그걸 if문으로 문자열을



    비교한다면.. 이건.. 상상하기도 싫네요...



    데이타 DB 를 하신다면.. 인덱스와 쿼리의 사용을 좀더 효율적으로 하는것에



    관심을 두셔야 합니다.



    불러온 데이타를 이런식으로 다시 검색해서 어떠한 처리를 하는것 보다는



    해당되는 자료를 보다 효율적으로 불러올수 잇게 하는편이 좋을것 같네요..



    만약 문자열 비교하는것이 더 빠르다 하더라도 이렇게 프로그래밍을 해두면.



    많은 사용자가 모두 풀스켄을 하게 됩니다. 서버 부하는 엄청나겠죠..



    그럼.. 즐거운시간 되세요..



    - 하얀까마귀 -



    iconfidence wrote:

    > 클릭해 주셔서 고맙습니다. 꾸뻑...

    >

    > 속도 차이를 알고 싶습니다.

    > 문자열 비교(if) vs query

    >

    > ex)

    > cnt := 0;

    >

    > query1.first;

    > for i:=0 to query1.recordcount do

    > begin

    > if query1.feildbyname('a').asstring = '찾는문자열' then

    > inc(cnt, 1)

    > else

    > query1.next;

    > end;

    >

    > vs

    >

    > query1.close;

    > query1.sql.clear;

    > query1.sql.add(' select count(*) as tmp from"데이블이름"');

    > query1.sql.add(' where a = '찾는문자열'');

    > query1.open;

    >

    > 어떤것이 더 빠른가요?

    >

    > 한수 갈켜주세영~~~

    >

    > 그럼, 20000

    >

    > i believe i can fly~~