[SQL]-(058) 여러 테이블의 데이터를 조인해서 출력하기1
[Reference] 초보자를 위한 SQL 200제
[SQL 문법]
서로 다른 테이블의 있는 컬럼들을 하나의 결과로 출력할 수 있다.
이를 EQUI JOIN이라고 한다.
SELECT empno, loc
FROM emp, dept
WHERE emp.deptno = dept.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 문법
# emp와 dept 테이블의 부서번호가 동일한 값들로부터 empno와 loc를 출력하는 문이다.
cursor.execute("""
SELECT empno, loc
FROM emp, dept
WHERE emp.deptno = dept.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)
[결과]
EMPNO LOC
0 7839 NEW YORK
1 7698 CHICAGO
2 7782 NEW YORK
3 7566 DALLAS
4 7654 CHICAGO
5 7499 CHICAGO
6 7844 CHICAGO
7 7900 CHICAGO
8 7521 CHICAGO
9 7902 DALLAS
10 7369 DALLAS
11 7788 DALLAS
12 7876 DALLAS
13 7934 NEW YORK
Leave a comment