프로그래밍/의문

sql에서 정수 괄호 숫자의 의미 bigint(5)

제페 2018. 7. 24. 15:51
반응형

CREATE TABLE account_battle_pet_slots (

  accountId int(10) NOT NULL DEFAULT '0',

  slot1 bigint(20) NOT NULL DEFAULT '0',

  slot2 bigint(20) NOT NULL DEFAULT '0',

  flags tinyint(3) NOT NULL DEFAULT '0',

  PRIMARY KEY (accountId)

)


같은 쿼리를 봤다. 

MSSQL은 쿼리 실행도 안 되더라.

위 쿼리는 MYSQL에서 사용된 쿼리인데 의미를 찾아보니 다음과 같았다.


결과 값을 출력할 때 앞에 0을 몇 개 표기할 건지를 지정한다. 


bigint(5)로 지정된 slot1에 1을 설정했다고 치자. 그럼 select 시 00001 같은 형식으로 보여지게 된다.

의의는 단위 비교를 사람이 편하게 할 수 있다는 점이 있겠다. 

추가적으로, 지정한 0 채우기의 크기를 넘어가도 정상적으로 저장되며 앞에 0이 안 붙을 뿐이다.


select 시 같은 아래와 같은 형식으로 나오던 게


slot1

1

12312

131231

123

92358


다음과 같은 형식으로 출력되니까


slot1

00001

12312

131231

00123

92358

반응형