비교 - Count() > 0, Any(), Count > 0

비교 - Count() > 0, Any(), Count > 0

Count() > 0 on a List with 1,000,000 elements

Any() on the same list

Count > 0 using the property

결과

| Method         | Mean      | Allocated |
|----------------|-----------|-----------|
| CountMethod    | 20.521 us | 0 B       |
| AnyMethod      | 0.989 us  | 0 B       |
| PropertyAccess | 0.045 us  | 0 B       |

글 : Boost Your C# Code: Why Any() is Faster Than Count() > 0 for Performance

저자 : Sukhpinder Singh

2개의 좋아요

Any()가 Count()보다 효율적이긴한데 Npgsql.EntityFrameworkCore.PostgreSQL에서는 지원되지 않습니다.

1개의 좋아요

IQueryable.Any() 와 같은 간단한 쿼리가 지원되지 않을 리가 없을텐데요.

1개의 좋아요

Npgsql.EntityFrameworkCore.PostgreSQL 5.x 버전 사용중인데 Any()를 사용하면 could not be translated라고 오류납니다. 그래서 어쩔수 없이 Count()를 사용하고 있습니다.

1개의 좋아요

지금 버전이 10인데, 너무 오래된 버전을 사용하고 계신 듯 합니다.

현재는 아무런 문제 없이 됩니다.

2개의 좋아요