집 >데이터 베이스 >MySQL 튜토리얼 >SQL Server 테이블에서 무작위 행을 효율적으로 선택하려면 어떻게 해야 합니까?
규모가 큰 SQL Server 테이블에서 임의의 행 하위 집합을 추출하는 작업은 계산 집약적일 수 있습니다. 복잡한 임시 테이블과 반복적인 프로세스를 사용하는 대신 SQL Server 고유의 기능을 활용하는 보다 효율적이고 간단한 방법입니다.
NEWID()
함수는 고유한 임의 GUID를 생성하여 임의 행 선택을 위한 기반을 제공합니다. [yourtable]
이라는 테이블에서 10% 무작위 샘플을 검색하려면 다음과 같은 간결한 쿼리를 사용하세요.
<code class="language-sql">SELECT TOP 10 PERCENT * FROM [yourtable] ORDER BY NEWID()</code>
훨씬 큰 테이블의 경우 다음 기술을 사용하여 성능 최적화를 달성할 수 있습니다.
<code class="language-sql">SELECT * FROM [yourtable] WHERE [yourPk] IN (SELECT TOP 10 PERCENT [yourPk] FROM [yourtable] ORDER BY NEWID())</code>
이 접근 방식은 키 스캔을 활용하여 선택한 행의 기본 키 값을 정확히 찾아낸 다음 원본 테이블과 결합하여 전체 행 데이터를 검색합니다. 이 조인 작업은 일반적으로 최소한의 오버헤드를 발생시키며, 특히 대규모 데이터 세트에서 작은 비율을 선택할 경우 더욱 그렇습니다.
이러한 간소화된 기술은 개발자에게 복잡하고 리소스를 많이 요구하는 대안을 피하면서 SQL Server 테이블에서 무작위 샘플을 선택하는 매우 효율적인 방법을 제공합니다.
위 내용은 SQL Server 테이블에서 무작위 행을 효율적으로 선택하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!