Amazon.com의 주문 번호를 MySQL 테이블에 저장해야하는 곳에 문제가 있습니다. Amazon.com 주문 번호는 102-1234567-1234567 (17 개의 숫자와 2 개의 하이픈)과 같은 숫자와 하이픈으로 구성됩니다. 이 "숫자"는 하이픈 때문에 문자열로 저장되는 경우가 있는데,이 열에 대한 검색은 숫자 검색 대신 문자열 검색입니다.MySQL : 하이픈을 포함하는 Amazon.com의 주문 번호 저장
지금 당장은 VARCHAR (19)로 저장하고 있지만 저장하고 검색하는 것이 더 효율적이고 빠르도록 저장하는 방법이 있습니까? 예를 들어, 각 숫자 세그먼트를 하나의 열 (하나의 주문 "숫자"에 대해 총 3 열)로 구문 분석하고 을 수행하는 대신 ... WHERE colA=102 AND colB=1234567 AND colC=1234567
을 수행하여 특정 주문을 가져 오는 방법을 생각했습니다. 나는 이전 바이트가 훨씬 더 적은 바이트를 사용한다는 것을 알고 있지만 또한 빠르다. 제가 작업하고있는 테이블은 100K 개 이상의 행을 가지고 있으며 매일 작은 조각으로 자랍니다.
구조를 수정해야하는 방법이나 내가 어떻게해서는 안되는지에 대한 의견이나 의견이 있으십니까? 티아!
대단히 감사합니다. VARCHAR (X), X> 19,이 칼럼의 색인을 생성하고,'LIKE' 대신에'='를 사용합니다. 그러나 이점을 읽어야합니다. 차이점에 익숙하지 않습니다. – musicliftsme