728x90
오늘 공부한 내용
-- ----------------- use 문---------------
SELECT * FROM member;
-- ---------SELECT ~ FROM--------------
SELECT mem_name From member;
SELECT addr, debut_date,mem_name FROM member;
-- --------------열 이름의 별칭 AS--------------------------
SELECT addr AS 주소 , debut_date AS '데뷔 일자' , mem_name AS 이름 FROM member;
SELECT addr 주소 , debut_date '데뷔 일자' , mem_name 이름 FROM member;
-- -----------------SELECT ~ FROM ~ WHERE---------------------------
SELECT *
FROM member
WHERE mem_name = '블랙핑크';
-- ----------------관계연산자, 논리연산자------------------------
-- - 관계연산자: > < >= <= =
-- - 논리연산자: AND OR
SELECT mem_id , mem_name FROM member WHERE height <= 162;
SELECT mem_name, height, mem_number
FROM member
WHERE height >= 165 AND mem_number > 6;
-- -----------------BETWEEN A AND B--------------------------
SELECT *
FROM member
WHERE height BETWEEN 163 AND 165;
-- ---------------------IN()------------------------------------
SELECT mem_name, addr
FROM member
WHERE addr In ('경기', '전남', '경남');
-- -------------------LIKE-------------------------
-- 문자열의 일부 글자를 검색할 때 사용
-- % : 무엇이든 허용
-- 언더바(_): 한글자 매치
-- 이름(mem_name)이 ‘우’ 로 시작하는 회원 검색
SELECT * FROM member WHERE mem_name LIKE '우%';
SELECT * FROM member WHERE mem_name LIKE '__핑크';
-- -----------------서브쿼리---------------------------
SELECT height
FROM member
WHERE height > (SELECT height FROM member WHERE mem_name = '에이핑크');
-- -------------ORDER BY------------------------------
-- 데뷔일자 빠른 순으로 정렬
SELECT mem_id, mem_name, debut_date
FROM member
ORDER BY debut_date;
-- 데뷔일자 늦은 순으로 정렬
SELECT mem_id, mem_name, debut_date
FROM member
ORDER BY debut_date DESC;
-- 평균키가 큰 순으로 정렬
SELECT mem_id, mem_name, debut_date , height
FROM member
WHERE height >= 164
ORDER BY height DESC;
-- 평균 키가 같을 때는 데뷔일자가 빠른 순서로 정렬
SELECT mem_id, mem_name, debut_date , height
FROM member
WHERE height >= 164
ORDER BY height DESC, debut_date ASC;
-- LIMIT (출력 개수 제한)
SELECT mem_name, debut_date
FROM member
ORDER BY debut_date
LIMIT 3;
-- 중복 데이터 제거
SELECT addr FROM member;
-- ↓
SELECT DISTINCT addr FROM member;
-- 결과값을 원하는 열로 묶어 출력하는 GROUP BY
-- 출력 결과를 그룹으로 묶어줌, 주로 집계함수와 함께 사용됨.
-- 집계함수의 종류
-- 1. SUM() : 합계
-- 2. AVG() : 평균
-- 3. MIN() : 최소값
-- 4. MAX() : 최대값
-- 5. COUTN() : 행의 개수
-- 6. COUNT(DISTINCT) : 행의 개수 (중복제거)
-- 구매내역 모두 출력
SELECT mem_id, amount FROM buy ORDER BY mem_id;
-- SELECT mem_id, SUM(amount) FROM buy ORDER BY mem_id;
-- 오.. 집계함수를 쓰려면 무조건 GROUP BY 를 써야하네...
-- 각 회원의 구매한 개수(amount) 를 합쳐서 출력
SELECT mem_id, SUM(amount) FROM buy GROUP BY mem_id;
-- GROUP BY 절에 조건줄때 사용하는 HAVING
-- 집계함수를 통해 계산 된 결과값에 조건을 줄떄는 HAVING 을 사용한다.
SELECT mem_id, SUM(price*amount)
FROM buy
GROUP BY mem_id
HAVING SUM(price*amount) > 1000;
더 공부할 내용
느낀점
SQL은 전에 오라클을 공부한 적이 있어서 그런지 더욱더 쉽게 느껴졌다.
복습 겸 책을 찾아보고 쉬엄쉬엄 공부하고 있다.
공부하다가 헷갈리는 부분을 조금 더 집중적으로 봐야겠다.
'Practice > Oracle' 카테고리의 다른 글
| SQLD준비_데이터모델링의 이해_엔터티 식별자 (0) | 2022.10.19 |
|---|---|
| SQLD준비_데이터모델링의 이해_관계 (0) | 2022.10.19 |
| SQLD준비_데이터모델링의 이해_속성 (0) | 2022.10.19 |
| SQLD준비_데이터모델링의 이해_엔터티 (0) | 2022.10.19 |
| Oracle_12. 문자함수_SUBSTR/ INSTR / REPLACE (0) | 2022.10.11 |