MariaDB 빠른 팁 #2 - 행 무작위화

1852 단어 mysqlsqlmariadb

MariaDB 팁과 요령



이것은 제가 1년 동안 축적한 일련의 빠른 팁과 요령 중 일부이며 다른 사람들에게 유용할 수 있다고 생각합니다.
비슷한 짧은 팁과 요령이 있으면 의견을 남겨주세요.

행 무작위화



쿼리의 반환된 행을 무작위로 지정하려는 경우가 있습니다. 테스트 데이터를 생성할 때일 수 있습니다.
요령은 ORDER BY RAND()를 사용하는 것입니다. RAND() 함수는 각 행에 대해 0과 1 사이의 새 난수를 생성하고 정렬할 때 행이 무작위화됩니다.
MariaDB는 이러한 종류의 쿼리를 최적화할 방법이 없기 때문에 행을 무작위화할 수 있는 다른 방법이 없는 한 프로덕션 코드에 입력해야 하는 것이 아닙니다. .
쿼리 행을 무작위화하는 이 접근 방식은

CREATE OR REPLACE TEMPORARY TABLE names (Name VARCHAR(50));

INSERT INTO names (Name) 
VALUES ('Joe'), ('Bob'), ('Anne'), ('Jane');

SELECT Name
  FROM names
 ORDER BY RAND() -- Ordering by RAND() will randomized the rows


좋은 웹페이지 즐겨찾기