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 1618 게시물 읽기
No. 1618
쿼리에 원하는 결과가 안나와요, 쉬운 거같은데 ㅠㅠ
작성자
백발마담
작성일
2004-10-13 17:18
조회수
2,773

파일처리테이블

 

AgentID filename read(읽으면1,안읽으면0)
aaa a파일 1
aaa b파일 0
bbb c파일 0
aaa d파일 0


 

상담원 테이블

 

AgentID 로그인상태(0:로그아웃, 1:로그인)
aaa 0
bbb 1
ccc 1
ddd 0


 

aaa상담원은 안읽은 파일2개, 로그아웃

bbb상담원은 안읽은 파일1개, 로그인

ccc상담원은 안읽은 파일0개, 로그인

ddd상담원은 안읽은 파일0개, 로그아웃

 

로그인한 상담원 중에 안읽은 파일이 가장 적은 상담원을 찾아야해요( select한 결과가 ccc 상담원 ID를 찾아야 함)

전 왜이렇게 결과가 안나올까요..

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

select a.AgentID AgentID, count(b.filename) read_cnt
from 상담원테이블 a, 파일처리테이블 b
where a.AgentID = b.AgentID
   and a.로그인상태 = 1
   and b.read = 0
group by a.AgentID
order by count(b.filename)

 

안 읽은 순서대로니까.. 맨위에 나올듯..
근데 딱 한사람만 쿼리해야 되나요?
그럼 top을 써야되나..

='ㅅ'=님이 2004-10-13 17:29에 작성한 댓글입니다. Edit

a.AgentID = b.AgentID 조건 때문에 ccc상담원이 안나오거든요.

굉장히 고민되요 ㅠㅠ

백발마녀님이 2004-10-13 17:41에 작성한 댓글입니다. Edit

먼저 로그인한 상담원을 추린 후,

그 들이 안읽은 파일의 수가 가장 적은 상담원 한명을 추출..

아래 처럼 select절에 스칼라서브쿼리를 쓰던가..

다르게는 outer join을 해야겠죠.

 

둘 중 성능이 우수한 것을 쓰세요..

 

select top 1 AgentID
from (
     select a.AgentID,
            IsNull(select count(*)
                   from 파일처리테이블 b
                   where a.AgentID = b.AgentID
                   and b.read = 0), 0) read_cnt
     from 상담원테이블   a
     where a.로그인상태 = 1
     ) a
order by a.read_cnt
sql님이 2004-10-13 23:52에 작성한 댓글입니다.
이 댓글은 2004-10-13 23:56에 마지막으로 수정되었습니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1621쿼리를 할때 레코드셋을 open 할때 data truncated 에러가 발생합니다. [1]
성대경
2004-10-15
2663
1620ms-sql에서 자료를 입력할때.... [1]
김미야
2004-10-15
2846
1619mssql 과 mysql 중에 어떤 데이터베이스를 쓰는게 나을까요? [1]
생선까시
2004-10-15
3175
1618쿼리에 원하는 결과가 안나와요, 쉬운 거같은데 ㅠㅠ [3]
백발마담
2004-10-13
2773
1616[질문]"ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]" 이놈이 뭔지 ???
서우람
2004-10-13
3058
1613Database 전체 백업 받을때
김민영
2004-10-12
2893
1612[질문] 수식은 안되는듯 합니다. 어떻게 해야할까요 ??? [2]
서우람
2004-10-11
2281
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.022초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다