본문 바로가기

구디 아카데미 수료 과정/데이터베이스

구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/클라우드 활용 자바개발자 양성과정/•28일차/11.29

 

집계함수 

 집계가 되면, 단일 값으로 출력이 되면, 여러개의 값을 출력할 수 없다

여러개의 row가 그룹화하여  하나의 결과를 반환함

집계함수는 집계함수들만 사용이 가능함

 ** DISTINCT : SELECT절에서 단순히 하나의 컬럼에 대해  중복을 제거하는 것을 이야기함 

 

 

 

 

 


Group BY 컬럼

FROM절에 조회된 테이블을 그룹화하여 처리할 수 있도록 해줌

GROUP BY에 사용된 컬럼의 값만 SELECT절에 사용할 수 있다.

 

 

 

 

 


ORDER BY

 

 

 

 

 

 


JOIN

정규화되어 있는 테이블을 원래형태로 만드는 것

INNER JOIN, NATURAL JOIN, OUTER JOIN

ON절 (USING절 - AND로 묶이니까 가로로 돼있을 때 조심)

 

 

 

NATURAL JOIN   (문자형 숫자랑 숫자도 합쳐진다는 거 기억)

 

USING 사용

 

ON절 사용

 

 

LEFT 조인   (OUTER는 안써도 됨)

FROM T1 LEFT OUTER JOIN T2 USING(B)

T1이 선행테이블, T2기 후행테이블이 됨

선행테이블을 기준으로 후행테이블을 붙여서 출력

-> 없는값 지우는게아니라 NULL로 처리함

RIGHT 조인

FROM T1 RIGHT OUTER JOIN T2 USING(B)

T1이 선행테이블, T2기 후행테이블이 됨

후행테이블을 기준으로  선행테이블을 붙여서 출력함 

 

FULL  OUTER JOIN

FROM T1 FULL OUTER JOIN T2 USING(B)

LEFT JOIN , RIHGT JOIN을 모두 포함함  + ORACLE에만 있음!

 

 

 

INNER JOIN은 ON절 / USING 절에 의해서 중복된 결과의 ROW만 출력

LEFT OUTER JOIN은 ON절에 상관없이 선행테이블 수준으로 출력

RIGHT OUTER JOIN은 ON절에 상관 없이 후행테이블 수준으로 출력

FULL OUTER JOIN은 LEFT와 RIGHT의 결과를 합쳐서 보여주게 된다

  (BUT 오라클에만 있고 FROM절 조인방식으로는 표현 불가)

 

 


SET OPERATION

 

 

                       INTERSECT 임 ㅎㅎ;

 


7교시 JDBC 메모장 치기 경연대회

 

java.sql.Connection = 접속정보를 가져옴  Datasource에 담아옴

java.sql.PreparedStatement = 쿼리 임시 저장영역  ->binding 문법..  그래서 ? 쳐서 거기 값만 계속 바꾸는 거임

 

conn객체에있는 prepareStatement(sql); 을 쓰면  -> conn.prepareStatement(sql)

그 값을 PreparedStatement 에 담아주는거임

 

 

Statement

CreateStatement  -> 구려서 안씀 

Collaber Statement 글자를 그대로 실행시킴 ->그러면 sql 어쩌구 공격발생 고오급쿼리쓸때 가아아아아아끔씀

PreparedStatement  ->얘가 보안도 좋고 성능도좋아서 얘씀

 

 

 

 

구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님