# MYSQL 설치 후 기본 문법
1. mysql commend line client 실행
2. enter password: oracle ( 자기 비밀번호 )
3. create database orcl ( DB 이름 )
4. use orcl
5. 자기가 갖고 있는 테이블 쿼리문 입력
6. 테이블 확인
select * from emp;
# 오라클과 MYSQL 함수 비교
오라클 --- MYSQL
1. nvl ifnull
2. sysdate sysdate()
3. months_between group_concat
4. decode if
5. rollup with rollup
6. listagg group_concat
예제 : 이름, 커미션을 출력하는데 커미션이 null인 사람은 0으로 출력하기
select ename, ifnull(comm,0)
from emp;
예제 : 오늘 날짜를 출력하기
select sysdate();
* MYSQL은 dual이 없다.
예제 : 부서 번호별 토탈 월급을 출력하는데 맨 아래에 전체 월급이 출력되게 하기
select deptno, sum(sal)
from emp
group by deptno with rollup;
# group_concat을 이용해서
부서번호, 부서번호별 사원들의 이름을 가로로 출력하기
select deptno, group_concat(ename)
from emp
group by deptno;
#########지금부터 가장 중요###########
# scott의 월급을 0으로 변경하기
update emp
set sal=0
where ename='scott';
# 다시 rollback 하고 월급 확인하기
rollback;
select ename, sal
from emp
where ename='scott';
***** mysql은 오라클과 다르게 기본 자동 commit이 활성화 되어있다.
그래서 자동 commit 때문에 rollback도 할 수 없다 ******
# 자동 커밋 활성화 확인하기
select @@autocommit;
* 1이면 on, 0이면 off 상태이다.
# 자동 커밋 비활성화 후 확인
set autocommit = FALSE;
select @@autocommit;
# 비활성화 후 king의 월급을 0으로 바꾸고, rollback 해보기
update emp
set sal=0
where ename='king';
select ename,sal
from emp
where ename='king';
rollback;
select ename,sal
from emp
where ename='king';
# MYSQL과 파이썬 연동하기
1. 아나콘다 프롬프트 창을 열고, pymysql 패키지를 설치
2. conda install pymysql 입력
3. pymysql 활용한 코드
예제 : emp 테이블에서 사원 이름과 월급 출력하기
import pymysql
import pandas as pd
conn = pymysql.connect(host="localhost", user="root",password="oracle", db="orcl",charset="utf8")
curs = conn.cursor()
sql = "select * from emp"
curs.execute(sql)
rows = curs.fetchall()
colname = curs.description
col = []
for i in colname:
col.append(i[0].upper())
emp = pd.DataFrame(list(rows),columns=col)
print(emp[['ENAME', 'SAL']] )
예제 : 직업별 토탈 월급 출력하기
import pymysql
import pandas as pd
conn = pymysql.connect(host="localhost", user="root",password="oracle", db="orcl",charset="utf8")
curs = conn.cursor()
sql = "select job, sum(sal) from emp group by job"
curs.execute(sql)
rows = curs.fetchall()
colname = curs.description
col = []
for i in colname:
col.append(i[0].upper())
emp = pd.DataFrame(list(rows),columns=col)
print(emp)
'나 취준생 > 파이썬' 카테고리의 다른 글
폐 사진 이미지를 숫자로 변환 (0) | 2020.12.22 |
---|---|
웹 스크롤링 연습 ( 유튜브 댓글 ) (0) | 2020.12.22 |
오라클과 파이썬 연동하기 (0) | 2020.12.21 |
구글 이미지 크롤링 (0) | 2020.12.18 |
감정 분석 + 워드 클라우드 (0) | 2020.12.18 |