[학습목표]
1. Mysql의 기본 구조와 환경설정 및 기본 명령을 구현하고 활용할 수 있다. 2. SELECT 문법을 이해하고 원하는 컬럼 데이터를 조회할 수 있다. 3. WHERE 절을 활용하여 조건에 맞는 데이터를 필터링할 수 있다. |
Database
entity : 데이터베이스에 저장하려고 하는 현실상의 개념 / 객체
attribute : entity의 속성
tuple : entity의 값
MySQL
1) 데이터베이스 만들기
CREATE DATABASE 데이터베이스명;
2) 데이터베이스 삭제하기
DROP DATABASE 데이터베이스명;
DROP TABLE 테이블명; //테이블 삭제하기
1) SELECT를 이용하여 데이터 추출하기
SELECT 컬럼명 ,,, [*]
FROM 테이블명 ,,,;
ex)
SELECT ENAME , SAL , DEPTNO FROM EMP;
SELECT * FROM EMP;
SELECT ENAME , EMPNO FROM EMP;
2) 컬럼과 테이블에 별칭 주기
SELECT 컬럼명 [AS] 별칭 ,,,
FROM 테이블명 [AS] 별칭 ,,,;
ex)
SELECT EMP.ENAME , EMP.DEPTNO , DNAME FROM EMP, DEPT;
SELECT E.ENAME , E.DEPTNO , D.DNAME FROM EMP E , DEPT D;
SELECT E.ENAME , E.DEPTNO , D.DNAME FROM EMP AS E, DEPT AS D;
3) 속성명으로 출력하기
#CASE 1 : 속성명에 공백이 있을 경우 " "
SELECT E.ENAME "사원 이름" , E.DEPTNO "부서 번호" , D.DNAME "부서 이름"
FROM EMP E , DEPT D;
#CASE 2 : as 선택
SELECT E.ENAME AS 사원이름 , E.DEPTNO AS 부서번호 , D.DNAME AS 부서이름
FROM EMP E , DEPT D;
#CASE 3 : 테이블 별칭과 컴럼 별칭
SELECT EMP.ENAME AS 사원이름 , EMP.DEPTNO AS 부서번호 , DEPT.DNAME AS 부서이름
FROM EMP E , DEPT D;
4) 중복 데이터 제거하기
SELECT DISTINCT 컬럼명 [AS] 별칭 ,,, [*]
FROM 테이블명 [AS] 별칭 ,,,;
DISTINCT : 지정한 컬럼 값이 완전히 같을 때 중복 제거
컬럼 1개일 때는 해당 컬럼값만 비교
컬럼 2개 이상일 때 컬럼들의 조합이 같아야 중복으로 간주
#Q10. 사원테이블에서 고유 직업명만 출력하자
SELECT DISTINCT JOB FROM EMP;
#Q11. 사원테이블에서 직업, 부서번호를 고유값으로 출력하자.
SELECT DISTINCT JOB, DEPTNO FROM EMP;
5) 속성에 4칙 연산 하기
*연산 시 NULL은 NULL로 리턴되어 계산되지 않는다.
- IFNULL(널이 있는 컬럼 , 초기값)
- COALESCE()
- WHERE 문과 같이 사용 IS NULL
SELECT ENAME , SAL , SAL * 12 AS 연봉 FROM EMP;
SELECT ENAME ,SAL , COMM, SAL +IFNULL(COMM,SAL) AS 봉급 FROM EMP;
SELECT ENAME ,SAL , COMM, SAL +COALESCE(COMM,0) AS 봉급 FROM EMP;
SELECT ENAME ,SAL , COMM, SAL +IFNULL(COMM,SAL *3) AS 봉급 FROM EMP;
6) 테이블의 사원의 이름과 입사일을 TEST03 테이블로 생성하기 (하지만 Mysql에서는 안됨)
CREATE TABLE TEST03 (사원이름 , 입사일) # Mysql에서는 x
AS
SELECT ENAME , HIREDATE
FROM EMP;
DESC TEST03;
7) 데이터 없이 구조만 가지고 오기
CREATE TABLE TEST03 LIKE EMP;
DESC TEST03;
8) 데이터 입력해서 넣기
INSERT INTO TEST02
VALUES('111','1980-01-01');
INSERT INTO TEST02
VALUES('222','1980/01/01');
INSERT INTO TEST02
VALUES('333','80-01-01');
INSERT INTO TEST02
VALUES('444','80/01/01');
9) 입사년도가 1981년 이후의 사원들 목록 출력하기
SELECT * FROM TEST02 WHERE HIREDATE > '1981-1-01';
'🦁멋쟁이 사자처럼 15기 > 3월달 수업 내용 정리' 카테고리의 다른 글
멋쟁이 사자처럼 19회차 ( 03 / 26 ) (0) | 2025.03.26 |
---|---|
멋쟁이 사자처럼 17회차 ( 03 / 21 ) (0) | 2025.03.21 |
멋쟁이 사자처럼 15회차 ( 03 / 19 ) (0) | 2025.03.19 |
멋쟁이 사자처럼 14회차 ( 03 / 18 ) (0) | 2025.03.18 |
멋쟁이 사자처럼 13회차 ( 03 / 17 ) (0) | 2025.03.17 |