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
운영게시판
최근게시물
MySQL Q&A 29148 게시물 읽기
No. 29148
query 질문 하나 드립니다
작성자
최종우(yanemone)
작성일
2009-07-14 14:27
조회수
5,718

안녕하세요 도저히 쿼리 만들기가 힘이 들어서 질문 드립니다.

 

테이블 두개가 있습니다.

하나는 회원정보테이블, 하나는 그 회원들의 출결테이블(엄밀하게는 결석만 기록)이 있습니다.

 

이 상황에서 회원 테이블의 회원중에서 결석테이블에 3회이상 기록된 회원을 제외한 나머지 회원을 select 하는 쿼리입니다.

 

left join을 쓰면 될까요? 휴..

mysql 5.0버전을 사용중입니다.

 

도움이 절실히 필요한 상황입니다

 

감사합니다

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

A 테이블에 회원 정보, B 테이블에 출결 기록만 있다고 한다면,

select a.id,count(*) as c from a left join b on a.id=b.id group by a.id having c < 3;

정도로 되지 않을까요? 속도 같은건 고려하지 않고 생각나는 대로 적어봤습니다.

아래는 예제로 작성해본 테이블과 결과입니다.

mysql> desc a;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | varchar(24) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
1 row in set (0.00 sec)

mysql> select * from a;
+------+
| id   |
+------+
| a    |
| b    |
| c    |
| d    |
+------+
4 rows in set (0.00 sec)

mysql> desc b;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | varchar(24) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
1 row in set (0.00 sec)

mysql> select * from b;
+------+
| id   |
+------+
| a    |
| a    |
| a    |
| b    |
+------+
4 rows in set (0.00 sec)

mysql> select a.id,count(*) as c from a left join b on a.id=b.id group by a.id having c < 3;
+------+---+
| id   | c |
+------+---+
| b    | 1 |
| c    | 1 |
| d    | 1 |
+------+---+
3 rows in set (0.00 sec)
 

mysql>

박현우(lqez)님이 2009-07-14 15:32에 작성한 댓글입니다.
이 댓글은 2009-07-14 15:39에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
29158데이타베이스를 서취하는 쿼리를 가르쳐 주십시오 [1]
초보라서
2009-07-16
5626
29157#1064 - 'SQL 구문에 오류가 있습니다.' 에러 같읍니다. [3]
최규진
2009-07-15
139522
29156정렬방법 [1]
김성민
2009-07-15
5485
29148query 질문 하나 드립니다 [1]
최종우
2009-07-14
5718
29147테이블 join시 문의사항 입니다. [6]
오은혜
2009-07-14
6253
29146insert할때 auto increment 되는 현재값을 구하는 방법 질문입니다.. 꼭 봐주세요 [2]
...
2009-07-14
6685
29145정렬하기 문제 [1]
조항철
2009-07-14
5369
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다