programing

mariadb에서 타임스탬프를 사용하여 사용자 지정 기본 키를 생성하는 방법

newstyles 2023. 10. 6. 20:57

mariadb에서 타임스탬프를 사용하여 사용자 지정 기본 키를 생성하는 방법

MariDB에서 company_id = 'id'에서 'select count ('id)'와 연결된 'YYYY'로 구성된 자동 생성 ID로 송장에 대한 표를 작성하고자 합니다.ID는 varchar 유형입니다.저는 평소에 간단한 아이디를 사용합니다.id integer auto_incremented primary key. 이번에는 제 아이디를 다른 방식으로 커스터마이징하고 싶습니다.

결과는 다음과 같습니다.20210001나는 다음과 같은 일을 하려고 생각했습니다.

table create invoice (
id varchar(10) primary key date('YYYY').(select count('id')+1 where company_id = xxx)
...
)

그게 옳은 일인지 아니면 더 나은 접근법이 있는지 모르겠습니다.연도 및 총 송장 + 1을 기준으로 자동 생성된 송장 ID를 얻으려면 어떻게 해야 합니까?

그 이유는 인보이스 ID로 직접 사용할 수 있는 2021-company_id-sequential_nr_per_company 등의 고유 ID가 포함된 인보이스 표를 원하기 때문입니다.기본 키로 정수를 사용하는 대신, 송장 문서에 인쇄될 ID인 기본 키로 고유한 문자열의 문자를 생각했습니다.너무 복잡하면 더 좋고 간단한 방법을 찾고 싶습니다.

언급URL : https://stackoverflow.com/questions/70065302/how-to-generate-custom-primary-key-with-timestamp-in-mariadb