메뉴 건너뛰기

조회 수 98 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

MySQL을 사용하여 개발을 하는 경우 특정 숫자나 Count 값에 대해서 출력을 하는 경우가 있다. 

이때 데이터를 가지고 온 상태에서 Code(코드)상에서 숫자에 대해서 3자리마다 콤마를 설정 혹은 처리 할 수 있으나, 그것보다는 Query(쿼리) 구문을 통해서 숫자에 3자리에 콤마를 바로 설정하여 출력을 하는 편이 간결하고 가독성도 좋다.(물론 이해하기에도 더 쉽다)

MySQL에서는 FORMAT 이라는 Function(함수)을 제공하고 있으며, 해당 Function은 "MySQL 4.0 이상"부터 사용이 가능하다.

그럼 어떻게 사용하는 간단히 알아보도록 하자.

1. FORMAT문 사용 방법 

FORMAT문은 매우 쉽게 사용할 수 있다. 

사용할 Column(컬럼) 앞에 FORMAT문을 넣어서 사용하면 끝이다. 

 

2. 예제(Example)

그럼 간단히 예제를 통해서 실행해보도록 하자. 

먼저 테스트 테이블을 생성(Test Create table) 및 테스트 데이터를 넣어(Test Data Insert) 보자.

# CREATECREATE TABLE `test_table` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `cnt` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB CHARSET=utf8;


# INSERTINSERT INTO `test_table` (`id`, `cnt`)
VALUES
	(1,10),
	(2,100),
	(3,1000),
	(4,10000),
	(5,100000);

테이블을 준비 했으면 Query를 작성해보도록 하자.

# CASE Query
SELECT 
    id,
    cnt,
    FORMAT(cnt, 0) AS format_cnt
FROM
    test_table;
    
    

[OUTPUT]
--------------------------------- 
id cnt format_cnt 
--------------------------------- 
1	10	10
2	100	100
3	1000	1,000
4	10000	10,000
5	100000	100,000

 

 

이처럼 FORMAT문을 통해서 Query상에서 원하는 결과값에 3자리마다 콤마를 설정하에 사용할 수 있다. 

위 Query의 대한 테스트 내용도 아래와 같이 남겨 놓았다. 같이 참고하면 더 쉽게 이해할 수 있을 것이다.


List of Articles
번호 제목 날짜 조회 수
126 BEGIN, COMMIT, ROLLBACK 2021.03.26 315
125 binlog 조회 / 삭제 / 보관 기간 설정 file 2023.01.10 129
124 CASE 문법 사용 하기 file 2023.01.10 111
123 column의 정보 중에서 column 설명(column_comment) 2021.03.26 129
122 Create Procedure 2016.12.23 6012
121 DB의 모든 테이블을 삭제하는 쿼리 2016.08.29 6767
120 DISTINCT와 ALL 2016.12.23 5498
119 Dump & Restore 2016.12.23 5788
118 dump 를 db에 올릴때 인코딩 문제 2016.12.23 5871
117 flush privileges 명령어 file 2017.04.12 5303
» FORMAT 문법 사용 하기(숫자 자리수 나타내기) file 2023.01.10 98
115 fulltext 관련 글 2021.03.26 125
114 group by, distinct, count 를 이용한 겹치지 않는것의 개수 2021.03.26 262
113 group by로 뽑아온 값중에 가장큰 값(max)의 상태값을 가져오기 2021.03.26 594
112 IMPORT 2016.12.23 5440
111 IN 연산자 2016.12.23 5809
110 InnoDB 스토리지 엔진에서 테이블의 최대 저장 row 개수 2018.07.18 1675
109 InnoDB, MyISAM 2016.12.23 5536
108 LIMIT 속도 저하 2021.03.26 247
107 MariaDB can't create test file lower-test 2023.02.16 139
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved