DB 같은 컬럼 값이 여러번 들어 올때..

DB 같은 컬럼 값이 여러번 들어 올때..

작성일 2010.08.21댓글 2건
    게시물 수정 , 삭제는 로그인 필요

DB에 컬럼 a, b, c가 있다 할 시

 

컬럼 c에 대한 값이 여려번 들어 올 수 있을 경우

 

이를 어떻게 처리해주면 되나요?

 

예를 들어..

 

컬럼 이름, 나이, 취미 가 있다고 했을때

홍길동, 20, 축구-야구-농구

길동이, 22, 독서

길동군, 23, 음악-영화

 

이렇게 취미 컬럼에 대한 값이 여러번 들어 올 수 있을 경우입니다.

 

스트링으로 만들고 이를 파싱하는 법 밖에 없을까요?


#mysql 같은 db

profile_image 익명 작성일 -

사용자별 취미 정보를 1:N 관계의 하위 테이블로 만드실 수도 있습니다.

 

사용자정보

 번호

이름

나이 

 1  홍길동  20 
 2  길동이  22
 3  길동군  23


 

취미정보

 번호

취미 

 1 축구 
 1 야구
 1 농구
 2 독서 
 3 음악 
 3 영화


 

profile_image 익명 작성일 -

yo`

저도 잘 모르지만 위와 같은 데이터 처리가 생각외로 많더군요 -.- 참 곤난해요~ ㅋ.ㅋ 일단 어느 방법이든지 일장일단이 있으며 어떤 방법이 왕도다 라는것은 없습니다. 

1. 테이블을 나눈다.

이름, 나이 정보가 기록되는 A 테이블 과 취미 가 기록되는 B 테이블로 나누어서 저장하는 방법인데요 

키값, 이름, 나이   와 키값, 취미 이런식으로 테이블구조를 설정해서 사용하는것인데 저장이나 수정할땐 편리한데 질의를 할때는 조금 불편합니다. join 과 취미 데이터가 한 레코드로 저장되는 방식이 아닌 여러 레코드로 저장될수 있어서 때에 따라서는 파이봇 까지 처리를 해야 해서 select 가 조금 불편해질수 있습니다.

2. 해당 DBMS가 지원하는 특정 데이터타입을 사용한다.

예를 들어 MySQL 같은경우에 Set 이라는 데이터타입이 존재하는데 이는 한개의 컬럼에 콤마 로 나누어지는 여러개의 데이터를 다룰수 있습니다. 위와 같은경우엔  축구,야구,농구 이런식으로 저장이 되겟죠 DBMS가 지원을 해주는것이라서 사용하기도 편리하고 테이블도 나누지 않고 좋긴 한데 지원하지 않다면 사용할수가 없겟죠 ^^

3. 취미 컬럼을 몇개로 나눈다.

미리 최대갯수를 정하는것입니다. 3개면 3개, 5개면 5개...취미1, 취미2, 취미3..... 이런식으로요. 갯수에 제한이 있지만 꽤 편리하죠. ^^ 

그외 생각해보면 다른방법이 많이 있을껍니다. 

다 일장일단이 있는거라서 테이터의 쓰임새나 인덱스전략 등 여러가지를 따져보고 결정을 해야돼서... 정규화 쪽으로 검색을 하시면 많은 도움이 되실껍니다. 

그럼

DB 같은 컬럼 값이 여러번 들어 올때..

DB컬럼 a, b, c가 있다 할 시 컬럼 c에 대한 값이 여려번... 취미 컬럼에 대한 값이 여러번 들어 올 수 있을... yo` 저도 잘 모르지만 위와 같은 데이터 처리가 생각외로...

db하이텍 지금 매수하는것도 괜찮나요?

... 하한가가 여러번 나오면서 급락하였고 투매 물량이 다... 투자요령 같은 것을 대강 알게 됩니다. 예를들어 대형주를 매입할 라든지 중소형주가 유리할 라든지, 또는...

하야트호텔의 SPIRIT시스템

... 등과 같은 다양한 정보를 모든 하얏트 숙박시설에 대해... 형태로 DB의 내용을 볼 수 있다. 그리고 SPIRIT 시스템이 가진 관계형 데이터베이스를 구축할 데이터 컬럼이...

주식질문좀!! 저평가우량주에 대해서...

... 그 사이 충분히 가치 투자 대가들의 책을 면밀히 여러번 살펴... 가져 수 있을지도 모르지만 총성 없는 냉정한 전쟁터 같은 주식시장에서 운만으로는 결코 좋은 성과를...

동부증권 주식 수수료질문 및 어플 기능...

... 여러번 사고 팔게 되면 거래시마다 수수료+0.3%의 수수료과... 가져 수 있을지도 모르지만 총성 없는 냉정한 전쟁터 같은 주식시장에서 운만으로는 결코 좋은 성과를...

Database에서 한번 조회된 결과를 다시...

... 오라클을 예를 들어 설명드립니다. 일단 아래에 붙임은... 이 LRU니 MRU니 하는 얘기들이 나옵니다. 일종의 리스트 같은 거죠.. 어쨌든 오라클의 메모리 영역이...

데이터베이스의 원초적인 원리

... 예를 들어 1000명의 유저가 그 테이블에 select를 날린다면... 이 LRU니 MRU니 하는 얘기들이 나옵니다. 일종의 리스트 같은 거죠.. 어쨌든 오라클의 메모리 영역이...