SQL 무작위 행 선택 기법
SQL 테이블에서 행을 무작위로 선택하는 것은 다양한 애플리케이션에서 흔히 발생하는 작업입니다. 이 가이드에서는 다양한 SQL 언어를 사용하여 "customerNames"("Id" 및 "Name" 열 포함)라는 테이블에서 5개의 고유 행을 선택하는 방법을 보여줍니다.
MSSQL(Microsoft SQL Server) 방식
MSSQL Server 2005 이상의 경우 이 쿼리는 5개의 무작위 행을 효율적으로 검색합니다.
SELECT TOP 5 Id, Name FROM customerNames ORDER BY NEWID()
NEWID()
은 무작위 GUID를 생성하여 TOP 5
절이 결과 집합을 제한하기 전에 무작위 순서를 보장합니다.
데이터베이스 간 무작위 행 선택(단일 행)
위의 방법은 MSSQL에서 작동하지만 다음 방법은 다양한 데이터베이스 시스템에서 하나 임의의 행을 선택하는 방법을 보여줍니다. 5개 행을 선택하도록 이를 조정하려면 추가 기술이 필요합니다(아래에 자세히 설명되어 있음).
SELECT column FROM table ORDER BY RAND() LIMIT 1
SELECT column FROM table ORDER BY RANDOM() LIMIT 1
SELECT column, RAND() as IDX FROM table ORDER BY IDX FETCH FIRST 1 ROWS ONLY
SELECT column FROM ( SELECT column FROM table ORDER BY dbms_random.value ) WHERE rownum = 1
SELECT column FROM table ORDER BY RANDOM() LIMIT 1
"column"
및 "table"
를 실제 열 및 테이블 이름으로 바꿔야 합니다.
여러 행을 무작위로 선택(5행)
단일 행 선택을 5개의 개별 행으로 확장하려면 더 정교한 접근 방식이 필요한 경우가 많습니다. 단일 행 쿼리를 반복적으로 실행하는 가장 간단한 방법은 비효율적이며 고유성을 보장하지 못할 수 있습니다. 일반적으로 대규모 데이터 세트의 경우 임의성과 구별성을 모두 보장하기 위해 창 기능 또는 자체 조인과 관련된 고급 기술이 선호됩니다. 구체적인 방법은 데이터베이스 시스템에 따라 다릅니다.
성능 고려 사항
임의 행 선택 쿼리의 성능은 테이블 크기와 데이터베이스 엔진 최적화에 의해 영향을 받을 수 있습니다. 매우 큰 테이블의 경우 성능 병목 현상을 피하기 위해 대체 샘플링 전략이 필요할 수 있습니다.
위 내용은 SQL 테이블에서 임의의 고유 행 5개를 어떻게 선택할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!