>  Q&A  >  본문

고유한 13자리 숫자 생성: MySQL의 방법 및 기법

안녕하세요 여러분, 저는 제 데이터베이스에 있는 기존 제품에 대한 고유한 13개 숫자를 생성하려고 하루 종일 노력했습니다. 모든 제품에는 EAN13 바코드가 있어야 합니다. 인터넷에서 많은 예제를 시도했지만 그 중 어느 것도 좋은 결과를 얻지 못했습니다. 누구든지 이 문제에 대한 해결책을 갖고 있습니까?

이것을 시도했지만 아무 효과가 없었습니다

으아악

위 코드를 사용하여 기존 테이블의 12000개 행을 모두 업데이트하려면 어떻게 해야 합니까? UPDATE를 시도했지만 UPDATE와 CAST를 혼합하려고 하면 오류가 발생합니다

제품 테이블 구조는 다음과 같습니다.

select cast(  (@n := (13*@n + 100) % 899999999981)+1e12 as char(15)) as num
from   (select @n := floor(rand() * 10e14) ) init,
       (select 1 union select 2) m01,
       (select 1 union select 2) m02,
       (select 1 union select 2) m03,
       (select 1 union select 2) m04,
       (select 1 union select 2) m05,
       (select 1 union select 2) m06,
       (select 1 union select 2) m07,
       (select 1 union select 2) m08,
       (select 1 union select 2) m09,
       (select 1 union select 2) m10,
       (select 1 union select 2) m11,
       (select 1 union select 2) m12,
       (select 1 union select 2) m13,
       (select 1 union select 2) m14,
       (select 1 union select 2) m15,
       (select 1 union select 2) m16,
       (select 1 union select 2) m17,
       (select 1 union select 2) m18,
       (select 1 union select 2) m19,
       (select 1 union select 2) m20,
       (select 1 union select 2) m21,
       (select 1 union select 2) m22
limit 5;

P粉135799949P粉135799949409일 전482

모든 응답(1)나는 대답할 것이다

  • P粉739886290

    P粉7398862902023-09-08 09:59:56

    바코드 업데이트. 새 테이블을 만든 다음 새 테이블에 값을 삽입한 다음 새 테이블을 사용하여 기존 테이블을 업데이트합니다.

    테이블 쿼리 만들기:-

    으아악

    삽입할 값:-

    으아악

    업데이트 쿼리:-

    으아악

    회신하다
    0
  • 취소회신하다