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 140 게시물 읽기
No. 140
Re: [질문..꼭!!]두개 이상의 field에서..
작성자
김동아(love89)
작성일
2001-11-13 11:51
조회수
11,784

관계형 데이터베이스에 인라인 뷰라는 개념이 있습니다.

인라인 뷰를 활용하시면 되리라 봅니다.

 

관계대수에서 결과값 또한 하나의 릴레이션(즉 테이블)이 되지요, 이것을 다시 입력으로 활용할 수 있듯이 말입니다.

 

그럼 SQL을 써보지요

 

SELECT COUNT(*) FROM

(

SELECT DISTINCT sender AS sr FROM TT

UNION

SELECT DISTINCT receiver AS sr FROM TT

)

AS TTT

 

뷰 TTT가 sr이라는 필드를 갖고 있지요

물론 명시적으로 sr을 표현 하지 않아도 됩니다.

 

SELECT COUNT(*) FROM

(

SELECT DISTINCT sender FROM TT

UNION

SELECT DISTINCT receiver FROM TT

)

AS TTT

해도 된다는 것이죠.

 

sender의 개수만을 구하시려면

SELECT COUNT(*) FROM

(SELECT DISTINCT sender FROM TT) AS TTT

하시면 되겠지요

 

DISTINCT는 결과집합에서 중복을 제거하는 키워드입니다.

 

그럼 좋은 결과 있기를 바랍니다.

 

-- 김완규 님이 쓰신 글:

>> 가령 아래와 같은 table "TT" 에서

>>

>> sender receiver time

>> A B 1

>> A C 2

>> B D 1

>> C A 2

>>

>> sender의 종류(A,B,C)의 갯수(3)을 구하려고

>>

>> : SELECT count(*) FROM TT GROUP BY sender ;

>>

>> 하면 주루룩 나오고 마지막에 3 rows가 선택되었다고 나옵니다.

>> 이것을 단지 3 만 출력하고 싶으면 어떻게 하나요?

>>

>> 또한 두개의 field에 걸쳐서, 즉 sender와 receiver를 합친 종류(A,B,C,D)

>> 의 갯수, 즉 4를 구하려면 어떻게 해야할지 모르겠습니다.

>>

>> 파이썬 프로그램에서 제어를 하려고 하는데, 물론 위 SQL문으로 결과를

>> 받아서 결과의 갯수를 세는 방법도 있습니다만..깔끔하게 SQL문 자체에서

>> 종류의 숫자만 받고 싶은데 잘 모르겠네요.

>> 그리고 아래 두 개의 Field에 걸쳐서 종류를 구하려면 어떻게 해야할지..

>> SQL문만 가지고는 불가능한 것인지요??

[Top]
No.
제목
작성자
작성일
조회
139MS-SQL의정의,조작,제어 궁금
장인권
2001-11-12
11578
138[질문]다른 db의 테이블 연결 [1]
한철수
2001-11-12
11598
137HOST_NAME() 함수에 대하여(고수분만 보세여)
오라클사용자
2001-11-12
11011
141┕>Re: HOST_NAME() 함수에 대하여(고수분만 보세여)
김동아
2001-11-13 12:16:30
11712
142 ┕>Re: Re: HOST_NAME() 함수에 대하여(고수분만 보세여)
오라클
2001-11-13 13:00:09
11281
143  ┕>Re: Re: Re: HOST_NAME() 함수에 대하여(고수분만 보세여)
김동아
2001-11-13 16:01:22
11194
155   ┕>Re: Re: Re: Re: HOST_NAME() 함수에 대하여(고수분만 보세여)
오라클
2001-11-16 20:48:37
10594
136[질문..꼭!!]두개 이상의 field에서..
김완규
2001-11-12
11581
140┕>Re: [질문..꼭!!]두개 이상의 field에서..
김동아
2001-11-13 11:51:16
11784
135[질문] sp_spaceused에서요..
김종일
2001-11-12
10928
133[질문] Link error...
정정문
2001-11-09
18598
132select * from table limit offset, count
정성식
2001-11-09
11169
134┕>Re: select * from table limit offset, count
김동아
2001-11-12 06:37:14
12230
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.055초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다