본문 바로가기
인공지능/SQL

5.13 인공지능 SQL ( 2 )

by bibibig_data 2021. 6. 5.

9-10

- 82p is.null

-88p 우리는 열을 넣을 것

 

- 단일 행 함수에 where절 사용 가능 이라고 필기하기


10-11

[4장]

[예제 4-1]

SELECT last_name,

LOWER(last_name) LOWER적용,

UPPER(last_name) UPPER적용,

email,

INITCAP(email) INITCAP적용

FROM employees;

---------------------------------------------------

[예제 4-2]

SELECT job_id, SUBSTR(job_id, 1, 2) 적용결과 /*첫번째부터 두개 추출*/

FROM employees;

---------------------------------------------------

[예제 4-3]

SELECT job_id, REPLACE(job_id, 'ACCOUNT', 'ACCNT') 적용결과 /*앞에꺼를 뒤에꺼로 변경*/

FROM employees;


11-12

[예제 4-5]

/*96p - 97p*/

SELECT job_id,

LTRIM(job_id, 'F') LTRIM적용결과,

RTRIM(job_id, 'T') RTRIM적용결과

FROM employees;

---------------------------------------------------

SELECT 'start'||TRIM(' - space - ')||'end' 제거된_공백

FROM dual;

---------------------------------------------------

4.2.2

[예제 4-6]

SELECT salary,

salary/30 일급,

ROUND(salary/30,0) 적용결과0, /*정수로*/

ROUND(salary/30,1) 적용결과1, /*소수점 하나까지*/

ROUND(salary/30,-1) 적용결과MINUS1 /*십의자리까지*/

FROM employees;

---------------------------------------------------

[예제 4-7] 101p

SELECT salary,

salary/30 일급,

TRUNC(salary/30,0) 적용결과0,

TRUNC(salary/30,1) 적용결과1,

TRUNC(salary/30,-1) 적용결과MINUS1

FROM employees;

---------------------------------------------------

floor ( 무조건 정수로 내림 )

ceil ( 무조건 정수로 올림 )

----------------------------------------------------

날짜타입함수 : DB 마다 다르다.

-----------------------------------------------------

select first_name, salary

,

(case

when (salary >= 9000) then 'HIGH'

when (salary >= 6000) then 'MIDLE'

else 'low'

end) as abc

from employees;

---------------------------------------------------------------

SELECT first_name,

last_name,

department_id, /* DECODE

salary 원래급여,

DECODE(department_id, 60, salary*1.1, salary) 조정된급여,

DECODE(department_id, 60, '10%인상', '미인상') 인상여부

FROM employees;

------------------------------------------------------------------------

-count 함수 126p

SELECT COUNT(salary) salary행수 /*전체 행 수 */

FROM employees;

SELECT COUNT(COMMISSION_PCT), COUNT(*) salary행수 ----셀 때 NULL값 제외

FROM employees;

------------------------------------------------------------------------

-SUM, AVG함수 127p

SELECT SUM(salary) 합계, AVG(salary) 평균, SUM(salary)/COUNT(salary) 계산된평균

FROM employees;

-------------------------------------------------------------------------------------------------

-group by문 128p

select to_char(hire_date,'YYYY')

, round(avg(salary)) from employees

group by to_char(hire_date,'YYYY');

select employee_id, sum(salary) from employees

group by employee_id; /* 동일한 데이터가 없어서 효과x */

-------------------------------------------------------------------------------------------------

select job_id, manager_id, sum(salary)

from employees

group by job_id, manager_id;

having sum(salary)>3000 /*where 뒤에는 함수가 못와. 그래서 having 씀 */

/* 될 수 있으면 그룹바이 밑에 쓰기 */

-------------------------------------------------------------------------------------------------


5-6

5장

136p

기본키 ( primary key ) -> 완전하게 중복되는 열 삭제

기본키 없으면 select insert update delete 불가능

외래키 (foreign key) -> join을 하기 위해서는 접점이 필요함. 그 접점을 만들어 놓은게 외래키 !!!

-데이트 베이스 설계도 : ERD 꼭꼭기억하기

-ERD 만드는 법 : 138P ~

내일은 조인 할 것 !

6:30 - 8:00 아삶공 유니브

8:00- 정처기공부하기

'인공지능 > SQL' 카테고리의 다른 글

오라클  (0) 2021.07.07
5.12 인공지능 SQL ( 1 )  (0) 2021.06.05
5.14 SQL ( 3 )  (0) 2021.06.05