728x90
반응형

SQL 19

[MySQL] 250519 수업예제

SELECT ename, sal, jobFROM empWHERE ename LIKE '_A%'ORDER BY ename;SELECT ename, sal, jobFROM empWHERE ename LIKE '%A%'ORDER BY job, sal desc;-- emp 사원중에서 S로 시작하는 이름을 가진 사원을 검색select ename, jobfrom empwhere ename like 'S%';-- emp사원중에서 80년도에 입사한 사원을 검색select ename, hiredatefrom empwhere hiredate BETWEEN '1980-01-01' and '1980-12-31';-- where hiredate like '%80%';/* IN 여러개 중에서 ..

SQL 2025.05.20

[MySQL] 250516 수업예제

-- Projection 원하는 컬럼만 명시SELECT empno, ename, jobFROM emp;-- selection 원하는 행만 가져옴SELECT empno, ename, jobFROM empWHERE deptno = 10; -- emp테이블에서 모든 사원의 이름과 입사일을 검색SELECT ename, hiredateFROM emp;-- emp테이블에서 업무가 SALESMAN인 사원의 이름과 업무, 급여 검색SELECT ename, job, salFROM empWHERE job = 'salesman'; -- emp테이블에서 sal이 2500달러 이상을 받는 직원번호, 이름, 업무, 급여를 검색select empno, enam..

SQL 2025.05.20

[MySQL] Workshop 2-2

-- ################## 지난 시간 리뷰 ######################/*1) 급여가 $1,500부터 $3,000 사이의 사람은 급여의 15%를 회비로 지불하기로 하였다. 이를 이름, 급여, 회비(소수점 두 자리 아래에서 반올림)를 출력하라. --> 위 문제에 해당하는 SQL문은 select ename, sal, round(sal*0.15, 2) 회비 from emp where sal between 1500 and 3000; 이다. 해당 SQL 문을 MySQL에서 제공하는 if문을 이용해서 다시 수정해본다.*/SELECT ename, sal, ROUND(sal * 0.15, 2) 회비FROM empWHERE sal BETWEEN 1..

SQL 2025.05.20

[MySQL] Workshop 2

-- ############### 지난 시간 리뷰 실습 ###############-- 1) 급여가 $1500 ~ $2000 이 아닌 사원의 ename 과 SAL를 검색-- 각각 별칭을 NAME, SALARY로 합니다.SELECT ename NAME, sal SALARYFROM empWHERE sal 2000; -- 2) 30번 부서의 연봉을 계산하여 이름, 부서번호, 급여, 연봉을 출력하라. 단, 연말에 급여의 150%를 보너스로 지급한다.SELECT ename, deptno, sal, sal * 12 + sal * 1.5 "annual salary"FROM empWHERE deptno = 30;-- 3) 직원들의 입사일을 기준으로 81년도에 입사한 사원..

SQL 2025.05.20

[MySQL] Workshop 1

-- 1) emp 테이블 정보를 확인하세요.SELECT *FROM emp;-- 2) 부서번호가 20번인 부서의 사람 중 사원번호, 이름, 월급을 출력하세요.SELECT deptno, empno, ename, salfrom empwhere deptno = 20;-- 3) 사원번호가 7521인 사람 중 이름, 입사일, 부서번호를 출력하세요select ename, hiredate, empnofrom empwhere empno = 7521;-- 4) 이름이 JONES인 사람의 모든 정보를 출력하세요select *from empwhere ename = 'jones';-- 5) 직업이 MANAGER인 사람의 모든 정보를 출력하세요select *from empwhere job = 'manager';-- ..

SQL 2025.05.20

[MySQL] 변환 함수, 그룹 함수, GROUP BY, HAVING 절

변환 함수 (형변환 함수)SQL에서는 데이터 타입을 바꾸거나 날짜 형식을 명시적으로 지정해야 할 일이 많아요.MySQL에서 자주 쓰이는 대표적인 변환 함수는 아래 네 가지입니다. 꼭 외워야 할 변환 함수 4가지함수 이름설명CAST(expr AS datatype)지정한 데이터 타입으로 변환CONVERT(expr, datatype)CAST와 거의 동일한 기능STR_TO_DATE(str, format)문자열을 날짜로 변환DATE_FORMAT(date, format)날짜를 특정 포맷의 문자열로 변환 예시SELECT CURDATE() - '2025-05-18' AS 기간; -- 올바르지 않은 연산SELECT CURDATE() - STR_TO_DATE('2025-05-18', '%Y-%m-%d') AS 기간;..

SQL 2025.05.20

MySQL 함수들과 조건 검색, 그리고 JDBC 연결 구조

✅ 조건 검색🔹 LIKE 연산자와 와일드카드LIKE '김%' → '김'으로 시작하는 이름LIKE '%A%' → 이름에 A가 들어간 경우% : 여러 문자 대응_ : 단일 문자 대응🔹 IN 연산자특정 값 목록에 포함되는 경우를 필터링WHERE deptno IN (10, 20, 30)🔹 NOT IN의 주의점NULL이 포함되면 결과가 아무것도 안 나올 수 있음 -- 부하직원이 없는 사원 찾기SELECT empno, enameFROM empWHERE empno NOT IN (SELECT mgr FROM emp);NOT IN은 내부 서브쿼리에 NULL이 있으면 결과가 없음.→ 대체 방법: LEFT JOIN ... WHERE mgr IS NULL 방식으로 해결✅ 단일행 함수🔸 문자 함수함수설명LOWER(), ..

SQL 2025.05.19

[DBMS 기초] 관계형 데이터베이스, MySQL CRUD까지

1. DBMS란?**DBMS (DataBase Management System)**는 데이터를 저장하고 관리하며, 필요할 때 꺼내 쓸 수 있도록 도와주는 시스템입니다.예) MySQL, Oracle, PostgreSQL, SQL Server 등DBMS 안에는 여러 개의 **Database(계정)**가 있고, 그 안에 여러 개의 **Table(테이블)**이 존재합니다. 이 구조가 바로 관계형 데이터베이스(RDBMS)의 기본입니다.2. MySQL 구성 개요Client / Server 구조사용자가 데이터를 요청 → 서버가 DB를 조회 후 응답화면에서는 form 데이터를 받고, DB에서는 column 기준으로 데이터를 처리MySQL 구성DBServer → Database → Table테이블 구조는 2차원 (행과 ..

SQL 2025.05.19

SQL 기초 문법 요약: ORDER BY, NULL, LIKE, LIMIT 완벽 이해

1. SELECT 구문의 정렬 (ORDER BY)SQL에서 데이터를 출력할 때 정렬은 기본적으로 오름차순(ASC)이야.내림차순은 DESC로 지정해주면 되고, 안 쓰면 ASC가 기본이야. ORDER BY sal; -- sal 기준 오름차순 정렬ORDER BY sal ASC; -- 같은 의미!ORDER BY sal DESC; -- sal 기준 내림차순 정렬서버가 정렬하는 순서서버가 SQL 문을 처리하는 순서는 이렇게 돼:FROM — 어떤 테이블에서 가져올지 결정WHERE — 조건에 맞는 데이터만 골라내기SELECT — 어떤 컬럼들을 보여줄지 선택ORDER BY — 마지막에 정렬 수행정렬은 데이터를 다 가져온 뒤에 하니까, 서버 성능엔 영향을 크게 주지 않아.2. Alias(별칭) 지정하기S..

SQL 2025.05.19
728x90
반응형