> 데이터 베이스 > MySQL 튜토리얼 > 성능 향상을 위해 UUID를 MySQL에 숫자로 저장하는 방법은 무엇입니까?

성능 향상을 위해 UUID를 MySQL에 숫자로 저장하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-12-04 01:18:10
원래의
1011명이 탐색했습니다.

How to Store UUIDs as Numbers in MySQL for Enhanced Performance?

MySQL에서 UUID를 숫자로 저장

MySQL 성능을 향상하려면 UUID를 문자열 대신 숫자로 저장하는 것이 좋습니다. 이 최적화는 MySQL의 더 빠른 바이너리 처리 기능을 활용합니다.

변환 프로세스:

  1. 대시 제거: UUID에서 대시를 제거합니다. 예를 들어 "110E8400-E29B-11D4-A716-446655440000"을 "110E8400E29B11D4A716446655440000"으로 변환합니다.
  2. 길이 계산: 결과 문자열 길이를 2로 나눕니다. 32자 길이의 UUID는 16개가 됩니다.
  3. 바이너리 필드 생성: MySQL에서 계산된 값과 길이가 같은 BINARY 필드를 생성합니다. UUID의 경우 BINARY(16)입니다.
  4. UUID 삽입: UNHEX() 함수를 사용하여 UUID의 이진 표현을 필드에 삽입합니다. 예:
INSERT INTO Table (FieldBin) VALUES (UNHEX("110E8400E29B11D4A716446655440000"))
로그인 후 복사

쿼리 및 형식 다시 지정:

  1. UUID 쿼리: 다음의 16진수 표현을 검색합니다. HEX()를 사용하는 UUID
  2. 대시 다시 삽입: 프로그래밍 언어에서 16진수 문자열의 9, 14, 19, 24번째 위치에 대시를 다시 삽입하여 원래 UUID를 얻습니다. 형식입니다.

예:

CREATE TABLE test_table (
    field_binary BINARY(16) NULL,
    PRIMARY KEY (field_binary)
);

INSERT INTO test_table (field_binary) VALUES (UNHEX('110E8400E29B11D4A716446655440000'));

SELECT HEX(field_binary) AS field_binary FROM test_table;
로그인 후 복사

위 내용은 성능 향상을 위해 UUID를 MySQL에 숫자로 저장하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿