Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL의 특정 목록에서 난수를 선택하시겠습니까?

<시간/>

이를 위해 rand()와 함께 elt()를 사용할 수 있습니다. 특정 목록에서 임의의 숫자를 선택합시다.

mysql> SELECT ELT(FLOOR(RAND() * 10) + 1,
   100,200,300,400,500,600,700,800,900,1000) AS random_value_from_listOfValues;

이것은 다음과 같은 출력을 생성합니다 -

+--------------------------------+
| random_value_from_listOfValues |
+--------------------------------+
| 1000                           |
+--------------------------------+
1 row in set (0.00 sec)

이제 쿼리를 다시 실행하여 특정 목록에서 임의의 숫자를 선택합니다.

mysql> SELECT ELT(FLOOR(RAND() * 10) + 1,
   100,200,300,400,500,600,700,800,900,1000) AS random_value_from_listOfValues;

그러면 다음과 같은 출력이 생성됩니다. 이것은 난수를 표시하기 때문에 위의 출력과 다를 것입니다 -

+--------------------------------+
| random_value_from_listOfValues |
+--------------------------------+
| 400                            |
+--------------------------------+
1 row in set (0.00 sec)