전체 글
-
[MySQL] SQL 숫자형함수 사용예시 (ABS, ROUND, CEIL, FLOOR, MOD, POWER, SQRT)직접 해보기/SQL 2024. 8. 13. 16:54
1️⃣ 절댓값 :: ABSSELECT ABS(숫자) ⇒ 입력한 숫자의 절댓값을 반환ABS 예시 (1)ABS 예시 (2) 2️⃣ 반올림 :: ROUNDSELECT ROUND(숫자, N) ⇒ 입력한 숫자의 소숫점 아래 N의 자리까지 반올림한 값을 반환ROUND 예시 (1)ROUND 예시 (2) 3️⃣ 올림 / 내림 :: CEIL / FLOORSELECT CEIL(숫자) : 입력한 숫자의 올림값(정수)를 반환SELECT FLOOR(숫자) : 입력한 숫자의 내림값(정수)를 반환CEIL 예시FLOOR 예시 4️⃣ 나머지 :: MODSELECT MOD(a, b) ⇒ a를 b로 나눈 나머지값을 반환MOD 예시 (1)MOD 예시 (2) 5️⃣ 거듭제곱 :: POWERSELECT POW..
-
[MySQL] SQL 연산자 모음 및 사용예시 (BETWEEN, IN, LIKE, UNION, UNION ALL)직접 해보기/SQL 2024. 8. 13. 01:18
✅ SQL 연산자 종류연산자 구분연산자연산자 설명비교 연산자=같음>보다 큼 (초과)보다 작음 (미만)>=보다 크거나 같음 (이상)보다 작거나 같음 (이하) , !=같지 않음논리 연산자ANDAND 앞뒤의 조건을 모두 만족할 때OROR 앞뒤의 조건 중 하나라도 만족할 때NOTNOT 뒤의 조건과 반대일 때산술 연산자+덧셈-뺄셈*곱셈/나눗셈집합 연산자UNION2개 이상의 테이블의 합집합 (중복 행은 제거함)UNION ALL2개 이상의 테이블을 중복행 포함해 합침특수 연산자BETWEENBETWEEN a AND ba와 b의 값 사이NOT BETWEEN a AND ba와 b의 값 사이가 아님ININ (List)리스트에 포함됨 값일 때NOT IN (List)리스트에 포함된 값이 아닐 때LIKELIKE 'A%'문자열이 ..
-
[MySQL] 뷰VIEW 생성, 수정, 삭제하기 (CREATE VIEW, ALTER VIEW, DROP VIEW)직접 해보기/SQL 2024. 8. 12. 20:55
0️⃣ 뷰 VIEW뷰는 사용자가 정의한 "가상의 테이블" 입니다.이름 그대로, 1개 이상의 테이블에 있는 데이터를 "보여주기만 하는" 용도입니다. 데이터를 저장하지는 않습니다.가상이긴 하지만 테이블이므로, 보통 테이블과 마찬가지로 중복되는 열을 가질 수 없습니다.뷰를 생성/수정/삭제하기 위해 사용하는 명령어 또한, 테이블의 명령어와 동일합니다.아래와 같이 생성할 때는 CREATE, 수정은 ALTER, 삭제는 DROP 을 사용합니다. 1️⃣ 뷰 생성하기 :: CREATE VIEW예를들어 JOIN, UNION 등의 결과물이 계속 필요한 경우, 수시로 만들지 않고 뷰에 임시저장해서 사용하면 편리합니다.서버를 종료하기 전까지는 테이블처럼 불러와서 사용할 수 있습니다.아래처럼 CREATE VIEW 뷰이름 AS..
-
[MySQL] 서브쿼리Subquery 활용해 데이터 조회하기직접 해보기/SQL 2024. 8. 10. 21:21
0️⃣ 서브쿼리 Subquery서브쿼리란, 말그대로 쿼리 안에 다시 쿼리를 사용하는 SQL문을 말합니다.메인쿼리의 특정 절 안에서 괄호를 치고, 그 괄호 안에서 SELECT~ FROM~ .. 쿼리가 들어가는 형태입니다.이 때 어떤 절 안에 들어가느냐에 따라, 아래처럼 다르게 칭합니다.인라인 뷰 (Inline view)스칼라 서브쿼리 (Scala Subquery)서브쿼리- FROM절 안에 들어가는 서브쿼리- 가상의 테이블을 하나 만드는 효과- SELECT절 안에 들어가는 서브쿼리- 연산속도가 비교적 느려 잘 사용하지 않음- WHERE절 안에 들어가는 서브쿼리1️⃣ FROM 절 내 서브쿼리 :: 인라인 뷰 FROM절은 원래 데이터를 조회할 테이블을 선택하는 부분이니, FROM절 안에서 사용하는 서브쿼리는..
-
[MySQL] 조인JOIN 으로 테이블 결합하기 (INNER JOIN, LEFT JOIN, RIGHT JOIN직접 해보기/SQL 2024. 8. 10. 01:07
0️⃣ 조인JOIN 으로 테이블 결합하기JOIN은 테이블 간의 관계를 이용해서, 2개 이상의 테이블을 결합하는 SQL 명령어입니다.테이블 간의 관계가 있다는 것은 곧, 테이블 간 연결이 가능하다는 의미입니다.그리고 테이블 간 연결은, 한 테이블의 PK(기본키)가 다른 테이블의 FK(외래키)로 들어가 있어서 가능한 것입니다.다시 말해, 2개 이상의 테이블 간에 공통된 값이 있다는 뜻입니다.1️⃣ 내부조인 INNER JOININNER JOIN은 두 테이블 간의 공통값이 매칭되는 데이터만 결합해서 조회해주는 조인 명령어입니다.따라서 양측 테이블에서 매칭되지 않는 데이터는 전부 제외됩니다.공통값을 찾을 열은 ON 뒤에 지정합니다.아래에선 customer의 회원번호 열과 sales의 회원번호 열이 일치하면 결..
-
[MySQL] SELECT문으로 데이터 조회하기 (FROM, WHERE, GROUP BY, HAVING, SELECT, ORDER BY)직접 해보기/SQL 2024. 8. 9. 23:31
0️⃣ SELECT문으로 데이터 조회하기SELECT는 필요한 데이터를 조회할 수 있게 해주는 SQL 명령어입니다. SELECT는 여러가지 절들과 함께 사용될 수 있는데, 아래와 같이 순서를 지켜줘야 합니다.SELECT → FROM → WHERE → GROUP BY → HAVING → ORDER BYSQL문을 통해 데이터를 조회하는 순서를 살펴보면 아래와 같습니다.FROM데이터를 조회할 테이블을 선택함WHERE선택한 테이블을 특정 조건으로 필터링함 → 특정 조건에 맞는 행만 선택함GROUP BY테이블의 특정 열의 내용에 따라 그룹핑함 → 그룹별 데이터를 집계해서 새로운 테이블을 생성함 HAVING그룹핑된 새로운 테이블을 특정 조건으로 필터링함 (GROUP BY 아래에서 사용되어야 함)SELECT데이터를 ..
-
[SQL TCL] 트랜잭션Transaction, 실행Commit, 취소Rollback, 임시저장Savepoint직접 해보기/SQL 2024. 8. 8. 00:49
0️⃣ TCL (Transaction Control Language, 트랜잭션 제어어)트랜잭션 제어어는 DML 명령어를 실행(Commit), 취소(Rollback), 임시저장(Savepoint)할 때 사용하는 명령어입니다.여기서 트랜잭션(Transaction)이란, SQL 명령어들로 이루어진 논리적인 작업단위입니다.이때 명령어들은 위에서 언급했듯이 INSERT, SELECT, UPDATE, DELETE와 같은 DML 명령어들로 이루어져 있습니다.또한 트랜잭션은 더 분할할 수 없는 최소의 작업단위입니다.실행취소임시저장COMMITROLLBACKSAVEPOINT- 모든 작업을 최종 실행함- 변경된 데이터를 테이블에 영구 반영함- 모든 작업을 되돌림=취소함- 따라서 데이터 변경 이전 상태로 복구됨- ROLLB..
-
[SQL DML] SQL 데이터 삽입INSERT, 조회SELECT, 수정UPDATE, 삭제DELETE직접 해보기/SQL 2024. 8. 7. 23:23
0️⃣ DML (Data Manipulation Language, 데이터 조작어)DML 은 테이블에서 데이터를 삽입, 조회, 수정, 삭제하기 위한 SQL 명령어입니다.여기서 WHERE절로 조건문을 생성해서 원하는 조건을 검색한 다음, 데이터를 조작할 수도 있습니다.DMLSQL 문법 예시새로운 데이터 삽입INSERT INSERT INTO 테이블이름 VALUES (추가할 데이터 내용);INSERT INTO 테이블이름 (열1, 열2, ...) VALUES (내용1, 내용2, ...);기존 데이터 조회SELECTSELECT * FROM 테이블이름;SELECT (칼럼1, 칼럼2, ...) FROM 테이블이름;기존 데이터 수정UPDATEUPDATE 테이블이름 SET 수정할 내용;UPDATE 테이블이름 SET 수정..