카테고리:

문자열 및 이진 함수 (일반) , 데이터 생성 함수

UUID_STRING

버전 4(임의) 또는 버전 5(명명됨) RFC 4122 호환 UUID(Universally Unique Identifier)를 형식 지정된 문자열로 생성합니다.

구문

UUID_STRING()

UUID_STRING( '<uuid>' , '<name>' )
Copy

인자

'uuid'

유효한 UUID 문자열입니다. 이 값은 반환된 UUID 를 생성하는 데 사용되는 네임스페이스입니다.

'name'

반환된 UUID 를 생성하는 데 사용된 이름입니다.

반환

이 함수는 문자열(VARCHAR 데이터 타입)로 형식이 지정된 128비트 값을 반환합니다.

사용법 노트

UUID_STRING은 RFC 4122를 준수하는 두 가지 버전의 UUID 생성을 지원합니다.

  • 함수에 인자가 제공되지 않으면 버전 4(임의) UUID가 반환됩니다. 난수 생성을 위해, MT19937-64로 알려진 64비트 Mersenne 트위스터 가 사용됩니다.

  • 버전 5(명명된) UUID는 uuid 문자열(네임스페이스라고 함)을 첫 번째 인자로 제공하고 name 문자열을 두 번째 인자로 제공하여 생성할 수 있습니다.

무작위 UUID 를 생성합니다.

SELECT UUID_STRING();
Copy
+--------------------------------------+
| UUID_STRING()                        |
|--------------------------------------|
| d47f4e30-306f-4940-8921-c154094df1a1 |
+--------------------------------------+

UUID 라는 이름을 생성합니다.

SELECT UUID_STRING('fe971b24-9572-4005-b22f-351e9c09274d','foo');
Copy
+-----------------------------------------------------------+
| UUID_STRING('FE971B24-9572-4005-B22F-351E9C09274D','FOO') |
|-----------------------------------------------------------|
| dc0b6f65-fca6-5b4b-9d37-ccc3fde1f3e2                      |
+-----------------------------------------------------------+

테이블을 만들고 무작위로 UUIDs 를 삽입합니다.

CREATE OR REPLACE TABLE uuid_insert_test(random_uuid VARCHAR(36), test VARCHAR(10));

INSERT INTO uuid_insert_test (random_uuid, test) SELECT UUID_STRING(), 'test1';
INSERT INTO uuid_insert_test (random_uuid, test) SELECT UUID_STRING(), 'test2';
INSERT INTO uuid_insert_test (random_uuid, test) SELECT UUID_STRING(), 'test3';
INSERT INTO uuid_insert_test (random_uuid, test) SELECT UUID_STRING(), 'test4';
INSERT INTO uuid_insert_test (random_uuid, test) SELECT UUID_STRING(), 'test5';

SELECT * FROM uuid_insert_test;
Copy
+--------------------------------------+-------+
| RANDOM_UUID                          | TEST  |
|--------------------------------------+-------|
| 7745a0cf-d136-406b-9289-38072d242871 | test1 |
| 8c31e031-a6bf-479d-9abb-b7909f298ba1 | test2 |
| e65d5641-01c0-4126-b80d-c5ae6d4848be | test3 |
| bd02bf4e-fa5d-498d-8a9a-d38200f1ca30 | test4 |
| 4df2a34e-ad65-46b4-a51a-3eb9394aeb83 | test5 |
+--------------------------------------+-------+