DB_005_mySQL_select_join

AMJ·2023년 3월 31일
0

db_log

목록 보기
5/14

Select

# 조회수 가장 많은 게시물 3개 만 보여주세요., 힌트 : ORDER BY, LIMIT
	SELECT * FROM article ORDER BY hit DESC LIMIT 3;

# 작성자명이 '홍길'로 시작하는 게시물만 보여주세요., 힌트 : LIKE '홍길%'
	SELECT * FROM article WHERE nickname LIKE '홍길%';

# 조회수가 10 이상 55 이하 인것만 보여주세요., 힌트 : WHERE 조건1 AND 조건2
	SELECT * FROM article WHERE hit >= 10 AND hit <= 55;
	SELECT * FROM article WHERE hit BETWEEN 10 AND 55;


# 작성자가 '무명'이 아니고 조회수가 50 이하인 것만 보여주세요., 힌트 : !=
	SELECT * FROM article WHERE nickname != '무명' AND hit <= 50;

# 작성자가 '무명' 이거나 조회수가 55 이상인 게시물을 보여주세요. 힌트 : OR
	SELECT * FROM article WHERE nickname = '무명' OR hit >= 55;

InnerJoin

# 출력시 보고 싶은 컬럼명 / (AS == alias) 
SELECT e.index AS '사원번호',e.name AS '사원명',d.name AS '부서명'  
# 기준 테이블 설정 
FROM dept AS d
# 교집합을 위한 테이블 설정
INNER JOIN emp AS e
# 매칭 할 컬럼 설정 
ON d.index = e.deptNum
# 정렬 방식 선택 1.부서명 기준, 2.사원명 기준
ORDER BY `부서명`,`사원명`;

LEFT/RIGHT (OUTER) JOIN

SELECT *
## table_A를 기준으로 join을 할 경우 
FROM table_A LEFT JOIN table_B
FROM table_B RIGHT JOIN table_A // 결과 동일
SELECT *
## table_B를 기준으로 join을 할 경우 
FROM table_A RIGHT JOIN table_B
profile
재미있는 것들

0개의 댓글