[SQL]-(060) 여러 테이블의 데이터를 조인해서 출력하기3
[Reference] 초보자를 위한 SQL 200제
[SQL 문법]
EQUI JOIN으로는 볼 수 없는 결과 데이터를 출력할 수 있다.
이 때 OUTER JOIN을 사용한다.
SELECT e.ename, d.loc
FROM emp e, dept d
WHERE e.deptno (+) = d.deptno
[예시]
# 오라클 연동 및 접속
import pandas as pd
import cx_Oracle
dsn=cx_Oracle.makedsn('localhost',1521,'orcl')
db=cx_Oracle.connect('scott','tiger')
cursor=db.cursor()
# SQL 문법
cursor.execute("""
SELECT e.ename, d.loc
FROM emp e, dept d
WHERE e.deptno (+) = d.deptno
"""
)
row=cursor.fetchall()
colname=cursor.description
col=[]
for i in colname:
col.append(i[0])
# pandas를 사용한 데이터 프레임 형식으로 변환
emp=pd.DataFrame(row,columns=col)
print(emp)
[결과]
ENAME LOC
0 KING NEW YORK
1 BLAKE CHICAGO
2 CLARK NEW YORK
3 JONES DALLAS
4 MARTIN CHICAGO
5 ALLEN CHICAGO
6 TURNER CHICAGO
7 JAMES CHICAGO
8 WARD CHICAGO
9 FORD DALLAS
10 SMITH DALLAS
11 SCOTT DALLAS
12 ADAMS DALLAS
13 MILLER NEW YORK
14 None BOSTON
Leave a comment