>데이터 베이스 >MySQL 튜토리얼 >SQL Server 테이블에서 무작위 행 샘플을 효율적으로 선택하는 방법은 무엇입니까?

SQL Server 테이블에서 무작위 행 샘플을 효율적으로 선택하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-19 07:56:09387검색

How to Efficiently Select a Random Sample of Rows from a SQL Server Table?

SQL Server 테이블에서 무작위 행 선택: 실용 가이드

이 가이드에서는 대규모 SQL Server 테이블에서 임의의 행 샘플을 검색하는 일반적인 문제를 다룹니다. 이 작업을 수행하기 위한 효율적인 방법을 모색하겠습니다.

도전:

광범위한 데이터세트로 작업하려면 분석이나 테스트를 위해 대표적인 무작위 행 하위 집합을 추출해야 하는 경우가 많습니다. 이를 수행하려면 빠르고 안정적인 방법을 찾는 것이 중요합니다.

효과적인 솔루션:

NEWID() 함수는 임의의 행을 선택하는 간단한 접근 방식을 제공합니다. 다음 쿼리는 행의 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>

이 방법은 기본 키 스캔과 조인을 활용하므로 대규모 데이터 세트와 작은 샘플 크기를 처리할 때 단순한 TOP 접근 방식에 비해 효율성이 향상됩니다. [yourtable][yourPk]을 실제 테이블 및 기본 키 이름으로 바꾸는 것을 잊지 마세요.

위 내용은 SQL Server 테이블에서 무작위 행 샘플을 효율적으로 선택하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.