클릭해 주셔서 고맙습니다. 꾸뻑...
속도 차이를 알고 싶습니다.
문자열 비교(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~~
이건 좀 비교라는것 자체가 무리가 있습니다..
첫째로 데이타 베이스에서 데이타를 불러오는데 걸리는 시간을 무시하고
이러한 비교를 한다는건 좀 그렇네요..
문제가.. 데이타가 천만건에서 데이타를 불러와서 그걸 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~~