테스트 사이트 - 개발 중인 베타 버전입니다

SELECT 해서 RAND 함수 통해 랜덤으로 출력하되 어느 한 필드 기준으로 랜덤으로 추 채택완료

amkorDB 9년 전 조회 4,285

SELECT 해서 RAND 함수 통해 랜덤으로 출력하되 어느 한 필드 기준으로 랜덤으로 출력할수 있을까요? 

 

예를들어

 

SELECT * FROM 테이블 ORDER BY RAND();

 

이 구문이 있습니다.

 

그런데 필드 중 category 이라는 필드가 있는데

 

이 필드 정렬하면서 랜덤이 가능할까요?

 

 

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
9년 전

    번호 카테고리  어떤필드       

------  --------  --------

     1  IT             kkk     

     2  IT             ooo     

     3  IT            yyy     

     4  회사         bbb     

     5  회사         ccc     

     6  회사         ddd     

     7  여행         eee     

     8  여행        fff     

     9  여행        ggg     

 

 

</p><p>SELECT </p><p>    A.* </p><p>FROM </p><p>    테이블 A,</p><p>    (</p><p>        SELECT @rownum:=@rownum+1 AS seq, C.카테고리</p><p>        FROM </p><p>            (SELECT DISTINCT(<span style="font-size: 14.6667px;">카테고리</span>) AS <span style="font-size: 14.6667px;">카테고리 </span>FROM 테이블 ORDER BY RAND()) C, </p><p>            (SELECT @rownum:=0) D </p><p>    ) B </p><p>WHERE </p><p>    A.<span style="font-size: 14.6667px;">카테고리</span>=B.<span style="font-size: 14.6667px;">카테고리</span></p><p>ORDER BY </p><p>    B.seq, RAND() </p><p>

 

    번호 카테고리  어떤필드      

------  --------  --------

     8  여행        fff     

     9  여행        ggg     

     7  여행        eee     

     1  IT        kkk     

     3  IT        yyy     

     2  IT        ooo     

     5  회사        ccc     

     6  회사        ddd     

     4  회사        bbb     

 

    번호 카테고리  어떤필드 

------  --------  --------

     3  IT        yyy     

     1  IT        kkk     

     2  IT        ooo     

     9  여행        ggg     

     8  여행        fff     

     7  여행        eee     

     6  회사        ddd     

     5  회사        ccc     

     4  회사        bbb     

 

    번호 카테고리  어떤필드 

------  --------  --------

     5  회사        ccc     

     6  회사        ddd     

     4  회사        bbb     

     9  여행        ggg     

     7  여행        eee     

     8  여행        fff     

     2  IT        ooo     

     1  IT        kkk     

     3  IT        yyy     

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

9년 전

order by category, rand() 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

a
amkorDB
9년 전
답변 감사합니다. 그런데

해당 필드 값 안에서 랜덤이 되는데요.

이것을 필드 값 순서 변경이 가능할까요?

예를들어

category 필드에
"IT", "회사" , "여행" 이렇게 있습니다.

그럼 순서 정렬할때

IT 인 값들 > 여행 인 값들 > 회사 인 값들

다시 새로고침하면

여행 인 값들> IT 인 값들> 회사 인 값들

이렇게는 안될까요?

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인