D/B 정규화 후 정규화 전처럼 view table만드는 방법
글쓴이: jazzsir / 작성시간: 수, 2011/09/21 - 10:30오전
전화번호부를 DBMS에 적용하려고 하는데 튜플들은 아래와 같습니다.
-phonebook-
key, 이름, 번호1, 번호1_hotkey, 번호2, 번호2_hotkey, 번호3, 번호3_hotkey, 그룹, 이메일, 생년월일, 홈페이지, 집주소
이렇게 되어 있는걸 정규화(번호관련 튜플 분리) 해서
-phonebook_main-
key, 이름, 그룹, 이메일, 생년월일, 홈페이지, 집주소
-phonebook_humber-
key, 번호, hotkey, 외래키(phonebook_main)
두개의 테이블로 만들었습니다.
근데 join을 하든 뭘로 하든 두 테이블을 합치면,
이름, 번호1, 번호1_hotkey, 그룹, 이메일, 생년월일, 홈페이지, 집주소
이름, 번호2, 번호2_hotkey, 그룹, 이메일, 생년월일, 홈페이지, 집주소
이름, 번호3, 번호3_hotkey, 그룹, 이메일, 생년월일, 홈페이지, 집주소
이런식의 결과가 나오는데요.
정규화하기 전과 같이 아래처럼 view table을 만들려면 어떻게 해야 하는지요??
이름, 번호1, 번호1_hotkey, 번호2, 번호2_hotkey, 번호3, 번호3_hotkey, 그룹, 이메일, 생년월일, 홈페이지, 집주소
Forums:
하려고 들면 할 수는 있는데 보통 안 합니다.
정규화를 했다는 것은 번호가 0개에서 3개 이상이 될 수 있다는 것 아닌가요?
만일 항상 3개가 있다면 굳이 정규화를 할 필요없죠.
윗분말이 정답
view Table 을 동적 쿼리로 만들어서 할수 있겠지만
그렇게 되면 더이상 SQL Query 가 아닌게 됩니다
그냥 중간에 App 만들어서 처리하는게 이상적일듯 합니다.
그래도 굳이 만드셔야 된다면 SQL CrossTab 을 검색해보세요 ^^
------------------------------------------------------------
ProgrammingHolic
댓글 달기