내가 현재 100,000 기록을 포함하는 테이블 일하고, 그리고 미래에 더 많은 것, 지금 내 고객은 최고 절을 사용하여SQL Server 2008의 Top Clause에 대한 가장 좋은 대안은 무엇입니까?
의 성능을 감소하고, 이것이 같은 최신 TOP 10 기록 ... 원하는 모바일 응용 프로그램, 성능이 유일한 관심사이므로 최신 상위 10 개 레코드를 가져 오는 데있어 다른 방법과 가장 좋은 방법은 순서에 따라 성능 손실이 발생할 수 있습니다.
두 가지 모두 최상의 성능을 제공합니다.
:
당신은 (이상적)에 인덱스가 필요합니다. –
+1 @Abbas가 트리거 오버 헤드에 신경 쓰지 않거나 데이터를 비정규 화하는 경우 가장 효과가있는 솔루션입니다. – Matthew
@Gabotron : 내가 제대로했는지 확인해 보도록하겠습니다. 기본값 인 topArticle이라는 새 테이블을 작성하면 상위 10 개 기사가 추가됩니다. 이제 사용자가 새 기사를 추가하면 기본 기사 테이블에 추가됩니다. TopArticle 테이블에서 마지막 레코드를 제거하여 상위 10 개 레코드가 유지되도록합니다. 이것이 바로 당신이 의미 한 것입니다. 그리고 당신이 "큰 것"과 "상위 10 하나"의 의미를 말해 줄 수 있습니까? – Abbas