테이블1
-----------------
회원테이블
-----------------
아이디 char 10
이름 char 10
성별 boolean 1
나이 int 4
-----------------
테이블2
-----------------
접속자테이블
-----------------
아이디 char 10
대화명 char 10
장소 char 30
-----------------
위와 같을때.. 같은 아이디끼리 두테이블의 정보를 모아서,
StringGrid 나 DBGrid 에 보여 주고 싶습니다..
전에 union 을 사용해서 임시 테이블을 생성하는 query 문을 사용하면 될듯 하는데..
sql 문이 어떻게 되는지 잘 모르겠네요..
두개의 테이블을 모아서 보여줄 수 있는 sql 문과 제가 하고싶은데로 할려면..
어떻게 하면 되는지 조언을 부탁드립니다...
>
> 테이블1
> -----------------
> 회원테이블
> -----------------
> 아이디 char 10
> 이름 char 10
> 성별 boolean 1
> 나이 int 4
> -----------------
>
> 테이블2
> -----------------
> 접속자테이블
> -----------------
> 아이디 char 10
> 대화명 char 10
> 장소 char 30
> -----------------
>
> 위와 같을때.. 같은 아이디끼리 두테이블의 정보를 모아서,
> StringGrid 나 DBGrid 에 보여 주고 싶습니다..
> 전에 union 을 사용해서 임시 테이블을 생성하는 query 문을 사용하면 될듯 하는데..
> sql 문이 어떻게 되는지 잘 모르겠네요..
> 두개의 테이블을 모아서 보여줄 수 있는 sql 문과 제가 하고싶은데로 할려면..
> 어떻게 하면 되는지 조언을 부탁드립니다...
ORACLE 의 경우를 예시하겠습니다.
테이블2 를 현재 접속중인 사용자 목록이라 하고, 테이블1 을 전체 사용자목록 이라 하고,
현재 접속중인 사용자의 아이디, 대화명, 장소, 이름, 성별, 나이 를 조회하려 할 때 SQL 문은
select t2.아이디, t2.대화명, t2.장소,
t1.이름, t1.성별, t1.나이
from 테이블2 t2, 테이블1 t1
where t2.아이디 = t1.아이디
와 같습니다.
이와 같이 다른 테이블에 존재하는 공통열 값의 비교를 통해 연결하는 것을 Join 이라하며
Equi-join, Non-Equi-join, Outer-join, Self-join 등의 확장 형태가 있습니다.
위의 예는 Equi-join에 해당합니다.