database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 2108 게시물 읽기
No. 2108
세개의 테이블 조인
작성자
qudals
작성일
2005-07-15 10:15
조회수
3,349

Ta

name point

------------

aaaa 10

bbbb 10

cccc 20

 

Tb

name point

------------

dddd 10

aaaa 20

 

Tc

name point

------------

aaaa 20

bbbb 30

dddd 10

eeee 10

 

위와 같은 테이블이 있을 때 다음과 같은 출력을 원합니다.

 

Result

name point

------------

aaaa 50

bbbb 40

cccc 20

dddd 20

eeee 10

 

2개의 경우엔 간단히 조인을 하면 될것 같은데 3개 이상이 되면 어떻게 해야 할지 감이 안잡힙니다.

도움을 기다리겠습니다. 감사합니다.

이 글에 대한 댓글이 총 4건 있습니다.

create table ta(
name char (10),
point int
)
create table tb(
name char (10),
point int
)
create table tc(
name char (10),
point int
)

insert into ta values('a',10)
insert into ta values('b',10)
insert into ta values('a',10)
insert into tb values('a',10)
insert into ta values('b',10)
insert into tc values('b',10)
insert into ta values('a',10)
insert into tb values('a',10)
insert into ta values('b',10)
insert into ta values('a',10)

 

select name,sum(point) point  from
(
select name,point from ta
union all
select name,point from tb
union all
select name,point from tc
) a
group by a.name

석이님이 2005-07-15 10:21에 작성한 댓글입니다. Edit

흠.. 제가 보기엔 조인이 아닌듯한데요.

select name, sum(point) as point from

  (select name, point from Ta

  union all

  select name, point from Tb

  union all

  select name, point from Tc ) x

group by name

order by 1

 

위의 조건이라면 union 을 한다음 grouping을 하는 게 맞지 않나 싶네요

 

 

여리님이 2005-07-15 10:24에 작성한 댓글입니다.
이 댓글은 2005-07-15 10:26에 마지막으로 수정되었습니다. Edit

오라클의 order by 와

mssql 의 order by 원리가 달라 여리님과 같이 반드시

order by 해주어야 정렬되었다는 것을 보장 할 수 있습니다.

실행계획에 따라 소팅 될 수도 있고 아닐 수 도 있습니다.

참고하세요

석이님이 2005-07-15 10:27에 작성한 댓글입니다.
이 댓글은 2006-11-09 14:16에 마지막으로 수정되었습니다. Edit

난감했었는데 의외로 쉽게 해결되네요... 감사합니다.

소병민(qudals)님이 2005-07-15 10:44에 작성한 댓글입니다.
이 댓글은 2005-07-15 10:44에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
2111저번에 제질문에많은 관심 보여주셔서 감사하면서..드디어 시작했습니다..ㅎㅎ 첫번째질문입니다 [14]
임종석
2005-07-15
3462
2110Stored Procedure 만 호출 할 수 있는 계정이 가능한가요? [1]
ASP
2005-07-15
3580
2109에디션별 차이점좀 쉽게 설명해주세요 [6]
나그네
2005-07-15
4956
2108세개의 테이블 조인 [4]
qudals
2005-07-15
3349
21071년치 더미 테이블 만들기 스크립트 입니다. [3]
석이
2005-07-14
4591
2106테이블 조회시 가상 데이터 출력이 가능 한가요? [4]
이항
2005-07-14
3607
2105SP로 임시테이블 생성에 관하여 [5]
파마자
2005-07-14
4279
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.016초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다