group_concat 다중 레코드를 한개 컬럼으로 출력.

2013. 7. 15. 17:53·Programing/MySQL
반응형


자꾸 잊어 버려서 기록 합니다.


MySQL에서 Select시 멀티 레코드를 한개 컬럼으로 표현하는 방법입니다.

 한개 컬럼으로 묶어서 쓰는건 concat()함수와 비슷합니다만, concat()함수는  단일 레코드에서 여러개의 컬럼을 묶어서 쓰는 것이고, group_concat()함수는 여러 래코드의 컬럼을 묶어 쓸때 사용합니다.


Sample table : book_mast

book_id

book_name

isbn_no

cate_id

aut_id

pub_id

dt_of_pub

pub_lang

no_page

book_price

BK001

Introduction to Electrodynamics

0000979001

CA001

AUT001

P003

2001-05-08

English

201

85.00

BK002

Understanding of Steel Construction

0000979002

CA002

AUT002

P001

2003-07-15

English

300

105.50

BK003

Guide to Networking

0000979003

CA003

AUT003

P002

2002-09-10

Hindi

510

200.00

BK004

Transfer of Heat and Mass

0000979004

CA002

AUT004

P004

2004-02-16

English

600

250.00

BK005

Conceptual Physics

0000979005

CA001

AUT005

P006

2003-07-16


345

145.00

BK006

Fundamentals of Heat

0000979006

CA001

AUT006

P005

2003-08-10

German

247

112.00

BK007

Advanced 3d Graphics

0000979007

CA003

AUT007

P002

2004-02-16

Hindi

165

56.00

BK008

Human Anatomy

0000979008

CA005

AUT008

P006

2001-05-17

German

88

50.50

BK009

Mental Health Nursing

0000979009

CA005

AUT009

P007

2004-02-10

English

350

145.00

BK010

Fundamentals of Thermodynamics

0000979010

CA002

AUT010

P007

2002-10-14

English

400

225.00

BK011

The Experimental Analysis of Cat

0000979011

CA004

AUT011

P005

2007-06-09

French

225

95.00

BK012

The Nature of World

0000979012

CA004

AUT005

P008

2005-12-20

English

350

88.00

BK013

Environment a Sustainable Future

0000979013

CA004

AUT012

P001

2003-10-27

German

165

100.00

BK014

Concepts in Health

0000979014

CA005

AUT013

P004

2001-08-25


320

180.00

BK015

Anatomy & Physiology

0000979015

CA005

AUT014

P008

2000-10-10

Hindi

225

135.00

BK016

Networks and Telecommunications

00009790_16

CA003

AUT015

P003

2002-01-01

French

95

45.00



Code

SELECT pub_id,GROUP_CONCAT(DISTINCT cate_id
ORDER BY  cate_id ASC SEPARATOR ' ')
FROM book_mast
GROUP BY pub_id ;

Output



group_concat의 재미있는 점은 order by 등을 할수가 있다는 것 :)




반응형
저작자표시 비영리 동일조건 (새창열림)

'Programing > MySQL' 카테고리의 다른 글

MySQL 속도 측정을 위한 SQL_NO_CACHE  (0) 2021.09.08
mysql strip_tags function / html 제거 후 검색  (1) 2020.10.20
MySQL 변수값 IN() 검색? FIND_IN_SET() 함수 이용  (1) 2018.12.31
MySQL EXPLAIN 사용하여 Query 퍼포먼스 확인.  (0) 2016.09.13
MySQL - 초성검색  (0) 2013.02.21
MySQL  (0) 2011.11.14
mysql 백업 및 복구  (0) 2010.08.29
mysql query 날짜 차이 구하기  (0) 2010.07.22
'Programing/MySQL' 카테고리의 다른 글
  • MySQL 변수값 IN() 검색? FIND_IN_SET() 함수 이용
  • MySQL EXPLAIN 사용하여 Query 퍼포먼스 확인.
  • MySQL - 초성검색
  • MySQL
Dongkkase
Dongkkase
개발자로 일하면서 부딪히는 문제풀이가 누군가에게 도움이 되길 바라며
    반응형
  • Dongkkase
    정집사의 개발로그
    Dongkkase
  • 전체
    오늘
    어제
    • All (444) N
      • 금융 (61) N
      • Programing (7) N
        • Algorithm (28)
        • API (2)
        • javascript (121)
        • CSS (6)
        • HTML (10)
        • PHP (15) N
        • JAVA (27)
        • JSP (17)
        • JSP 예제 (1)
        • IOS (1)
        • Android (1)
        • Sencha Touche (1)
        • bat file, cmd (0)
        • 디버깅 (2)
        • SQL (17)
        • MS-SQL (1)
        • MySQL (12)
      • Server (14)
        • Docker (1)
        • Windows (9)
        • Linux (3)
        • jeus (1)
      • Database (5)
      • IT 일반 (15)
      • 리뷰 (36)
        • Book (17)
        • 제품 (1)
        • 영화 소개 (11)
        • 음악 소개 (7)
      • 잡생각 (31) N
        • 회고 (2) N
        • 자료실 (6)
        • 낙서장 (12)
        • 위시리스트 (2)
        • WOW (1)
        • 덕 (1)
  • 인기 글

  • 최근 댓글

  • 태그

    jsp
    자바스크립트
    SQL
    php
    IT·컴퓨터
    js패턴
    It
    자바
    읽고 싶은 책
    위시리스트
    자바스크립트유틸
    기초
    블로그
    IT블로그
    디자인패턴
    iT's MY LiFE
    IT 관련
    Java
    JavaScript
    사고 싶은 책
  • hELLO· Designed By정상우.v4.10.3
Dongkkase
group_concat 다중 레코드를 한개 컬럼으로 출력.
상단으로

티스토리툴바