이너 조인, 아우터 조인 그리고 서버 이론_20260616

JAEWOONG LEE·2026년 6월 16일
post-thumbnail

올해 초 ERPNext를 테스트하는 중 많은 생각이 났음.
Json 등등 때문에 고생을 했지만 json을 약간 알아갈때쯤 이미 운명은 결정되었다고 확신했다.
그리고 이번 과정에서 스칠지도 모른다고 생각하고 선생님께 문의를 좀 해봐야겠다.
json말고도 다른 db도 다룰 것이기때문에 조심스러움
아래는 수업 내용이며 오늘은 심화 쿼리문 외에 특별히 코딩 한 내역 없음

INSERT INTO department_test (dept_id, phone_number) VALUES ('수학과', '1234-5678');
INSERT INTO department_test (dept_id, phone_number) VALUES ('물리학과', '2345-6789');
INSERT INTO department_test (dept_id, phone_number) VALUES ('체육학과', '3456-7890');

INSERT INTO employees_test (employee_id, employee_name, employee_age, employee_salary, employee_position, dept_id)
VALUES (1,'김부장', 43, 8000, '부장', 1);
INSERT INTO employees_test (employee_id, employee_name, employee_age, employee_salary, employee_position, dept_id)
VALUES (2,'이과장', 39, 7000, '과장', 2);
INSERT INTO employees_test (employee_id, employee_name, employee_age, employee_salary, employee_position, dept_id)
VALUES (3,'김대리', 36, 6500, '대리', 3);
INSERT INTO employees_test (employee_id, employee_name, employee_age, employee_salary, employee_position, dept_id)
VALUES (4,'최대리', 30, 6000, '대리', 2);
INSERT INTO employees_test (employee_id, employee_name, employee_age, employee_salary, employee_position, dept_id)
VALUES (5,'정사원', 28, 5000, '사원', 1);

테이블 생성 후 문제 푼 내역

employee_position VARCHAR(100) DEFAULT '사원' NOT NULL
CHECK (employee_position IN ('사원', '대리', '과장', '차장', '부장')),
-- 형식+ not null + 체크(해당 컬럼 in('직급')
이 문법은 외우자, 형식(int, char)+디폴트 사원, 낫눌 체크(테이블 in 직급))

-- 1번 <사원> 테이블로부터 모든 직원의 이름과 직급을 조회해보세요
-- select employee_name, employee_position from employees_test

-- 2번 부장, 과장 직급을 가진 직원들만 조회해보세요
-- select employee_name, employee_position from employees_test
-- where employee_position = '부장' or employee_position ='과장'

-- 3번 성이 '김'씨인 직원들만 조회해보세요
-- select employee_name, employee_position from employees_test
-- where employee_name like '김%'

-- 4번 나이가 30대인 직원을 조회해보세요
-- select employee_name, employee_position, employee_age from employees_test
-- where employee_age >=30

-- 5번 이 회사의 평균 연봉을 구해보세요
-- select avg(employee_salary) from employees_test

-- 6번 연봉의 최대값과 최소값을 구해보세요. 이때 각각 '최대 연봉', '최소 연봉' 이라는 별칭을 사용하세요
-- select max(employee_salary) as '최대연봉',
-- min(employee_salary) as '최소연봉'
-- from employees_test

-- 8번 <부서>, <사원> 테이블을 활용해 각 사원의 이름과 그들이 속한 부서의 부서ID,
-- 부서 이름을 한번에 조회해보세요.
-- SELECT employee_id, employee_name, dept_name, d.dept_id, d.dept_name, d.phone_num
-- FROM employees_test e JOIN department_test d
-- ON e.dept_id = d.dept_id;

보통 조인이라고 하면 이너조인, 아우터 조인(outer join)도 있음
집합 연산(set operation)

합집합, 교집합, 파집합 연산 등

Serve : 섬기다, 모시다
Service, Serving(서빙)

Client(고객)

서버와 클라이언트

클라이언트 : 웹 브라우저
크롬, 사파리, 엣지

logic(논리) = 비즈니스(핵심 업무)

프로토콜(통신 규약)
http 프로토콜

요청(Request) : 해줘
응답(Response) : 여깄어, 그런거 없어(404 페이지)

잘못된 주소를 불렀더니 그런 동영상 없어~

메타데이터(Meta data) 데이터의 데이터
보통 부가적인 데이터를 의미, 본문 제외한

json= =텍스트

500 internal server error (내부 서버 오류)
401 인증 실패(Unauthorized) - 로그인 실패
404 잘못된 요청(not found)
403 인가 실패(권한 문제)

4로 시작하면 클라이언트 잘못
서버는 잘 했음

쿠키(Cookie) = 브라우저가 제공하는 저장공간

Open authenication
개방형 인증

profile
just for programming test

0개의 댓글