728x90
반응형

Web Frontend/Database 11

[SQL] 와이드한 너비로 결과값을 출력하려면 - PIVOT

✅ PIVOT으로 행 열 변환해서 출력하기PIVOT은 SQL에서 행(row)을 열(column)로 변환하는 데 사용되는 연산자입니다.주로 데이터 요약 및 분석에 유용하며, 쿼리 결과를 회전시켜 데이터를 다른 방식으로 나타낼 때 사용됩니다.PIVOT은 주로 다양한 값을 하나의 행으로 결합하고, 데이터 분석을 쉽게 만들기 위해 사용됩니다.✅ PIVOT 구문PIVOT 구문의 기본 구조SELECT 컬럼1, 컬럼2, ... FROM ( SELECT 행을변환할컬럼, 집계컬럼 FROM 테이블명) PIVOT ( 집계함수(집계컬럼) FOR 행을변환할컬럼 IN (변환할값1, 변환할값2, ...)); 행을변환할컬럼: 행을 열로 변환할 기준이 되는 컬럼.집계컬럼: 집계 함수가 적용될 컬럼입니다. 예를 들..

[SQL] 음수, 양수 확인하기 - SIGN 함수

SIGN 함수는 데이터 분석과 수치 데이터를 다룰 때, 어떤 숫자가 양수인지, 음수인지, 0인지를 구분해야 할 때 사용합니다.✅ 1. SIGN 함수란?SIGN 함수는 숫자의 부호를 판별하는 SQL 함수입니다.입력값이 양수인지, 음수인지, 0인지를 판단할 때 유용합니다.✅ 2. SIGN 함수의 기본 구문SIGN(숫자)양수 → 1 반환0 → 0 반환음수 → -1 반환✅ 3. SIGN 함수 사용 예제✔️ (1) 단순한 숫자 판별SELECT SIGN(-50) AS 결과_1, -- 결과: -1 SIGN(0) AS 결과_2, -- 결과: 0 SIGN(25) AS 결과_3 -- 결과: 1FROM dual;-50은 음수이므로 -1 반환0은 그대로 0 반환25는 양수이므로 1 ..

[SQL] DECODE로 대체값 넣어서 출력하기

특정 값에 따라 다른 결과를 반환해야 하는 경우에 DECODE를 함수를 사용합니다. 예를 들어, 성적 점수를 등급으로 변환하거나, 고객의 등급을 VIP/일반/신규로 분류하는 경우가 있습니다. ✅ 1. DECODE 함수란?IF-ELSE 또는 CASE WHEN과 유사한 기능을 수행하는 SQL 함수입니다.특정 값이 주어졌을 때 미리 지정한 값과 비교하여, 일치하는 경우 특정 결과를 반환합니다.CASE WHEN보다 간결한 코드로 표현할 수 있어 빠르게 조건 처리를 할 때 유용합니다.✅ 2. DECODE 함수의 기본 구문DECODE(표현식, 검색값1, 결과값1, 검색값2, 결과값2, ..., 기본값)표현식: 비교할 대상검색값 & 결과값: 표현식과 검색값이 일치하면 결과값을 반환기본값: 어떤 값과도 일치하지 않을 ..

[SQL] 트랜잭션 이해하기 - ACID 원칙

✅ Transaction(트랜잭션)이란?트랜잭션(Transaction)은 데이터베이스에서 실행되는 하나의 논리적인 작업 단위를 의미합니다.즉, 여러 개의 SQL 문을 하나의 묶음으로 처리하고, 이를 하나의 작업(트랜잭션)으로 간주합니다. 트랜잭션 문법 BEGIN TRANSACTION; -- 트랜잭션 시작 ( Oracle에서는 자동 )UPDATE 실행 쿼리UPDATE 실행 쿼리COMMIT; -- 트랜잭션 완료 → 저장!✅ 트랜잭션이 필요한 이유데이터의 무결성(Integrity) 보장→ 중간에 오류가 나도 완전히 수행되거나(Rollback), 완전히 취소(Commit)되는 것이 중요함.은행 시스템, 주문 시스템, 결제 시스템 등에서 필수→ 예를 들어, 계좌에서 돈을 이체할 때 보내는 쪽에서 차감되었지만 받..

[SQL] 데이터 정렬하는 법 - ORDER BY절 활용하기

데이터를 정렬할 때는 ORDER BY 절을 활용해 결과를 정렬(Sorting)할 수 있습니다. ORDER BY절을 활용하면 목적에 맞게 정렬된 데이터를 불러올 수 있습니다.✅ ORDER BY 절이란?SELECT 문의 결과를 특정 컬럼 기준으로 정렬기본 정렬 방식: 오름차순(ASC, 작은 값 → 큰 값 : 타입에 따른 정렬 기준은 따로 정리) 내림차순 정렬: DESC (큰 값 → 작은 값)여러 개의 컬럼을 기준으로 정렬 가능숫자, 문자, 날짜 데이터 정렬 가능✅ ORDER BY 절 사용 문법SELECT 컬럼명FROM 테이블명ORDER BY 컬럼명 [ASC | DESC];ASC → 오름차순 정렬 (기본값, 생략 가능)DESC → 내림차순 정렬여러 개의 컬럼을 정렬할 수도 있음✅ ORDER BY 절 예제1️⃣..

[SQL] 오름차순(ASC)과 내림차순(DESC) 정렬 순서

가끔 헷갈릴 때 보기 위한 정리 포스팅입니다.✅ 표로 한 눈에 보기데이터 유형 오름차순 (ASC) 내림차순 (DESC)숫자(Number)작은 값 → 큰 값큰 값 → 작은 값문자(String)A → Z (가나다순)Z → A (역순)날짜(Date)과거 → 미래미래 → 과거 1️⃣ 숫자(Number) 데이터 정렬 순서정렬 방식 정렬 순서오름차순 (ASC)가장 작은 숫자 → 가장 큰 숫자내림차순 (DESC)가장 큰 숫자 → 가장 작은 숫자 ✔ 예제 데이터SELECT * FROM 제품 ORDER BY 가격 ASC; 🔹 오름차순 결과가격----100200300400SELECT * FROM 제품 ORDER BY 가격 DESC; 🔹 내림차순 결과가격----4003002001002️⃣ 문자(String) 데이터 정렬..

[SQL] + 연산자와 집계 함수( SUM, AVG, COUNT, MIN, MAX etc ) 차이점

SQL에서 덧셈 연산자(+)와 집계 함수(SUM(), AVG(), COUNT() 등)는 숫자 데이터를 처리할 때 많이 사용됩니다.하지만 연산 방식이 다르기 때문에 잘못 사용하면 예상과 다른 결과가 나올 수 있습니다.✅ + 연산자와 SUM() 함수의 차이SQL에서 덧셈(+) 연산자와 SUM() 함수는 모두 숫자 데이터를 다룰 때 사용되지만, 용도가 다릅니다. 연산 역할 NULL 처리 그룹별 계산 가능 여부+개별 행의 값을 더함NULL이 포함되면 결과 NULL❌SUM()여러 행의 값을 합산NULL 무시✅1. + 연산자두 개 이상의 숫자를 단순히 더하는 연산자행(row) 단위 연산이므로 개별 행의 값만 더할 수 있음NULL 값을 만나면 결과가 NULL이 됨 ( 0 + NULL = NULL )SELECT 100..

[SQL] NOT, AND, OR 우선순위

SQL을 학습할 때 우선순위를 알고 있어야 SQL의 실행 흐름을 정확하게 파악할 수 있습니다.1. NOT > 2. AND > 3. OR다음 sql 문장 중 실행 결과가 다른 하나는?1. SELECT COUNT(*) FROM EMP WHERE DEPTNO = 10 OR DEPTNO = 20 AND JOB = 'CLERK';2. SELECT COUNT(*) FROM EMP WHERE (DEPTNO = 10 OR DEPTNO = 20) AND JOB = 'CLERK';3. SELECT COUNT(*) FROM EMP WHERE DEPTNO = 10 OR (DEPTNO = 20 AND JOB = 'CLERK');4. SELECT COUNT(*) FROM EMP WHERE (DEPTNO = 10 OR DEPTNO..

[SQL] WHERE절은 조건 필터링 절

WHERE 절은 SQL에서 특정 조건을 만족하는 데이터만 선택할 때 사용하는 조건 필터링 절입니다.✅ WHERE 절이란?데이터를 필터링할 때 사용하는 SQL 절SELECT, UPDATE, DELETE 문과 함께 사용됨조건을 지정해서 특정 행(Row)만 조회, 수정, 삭제 가능✅ WHERE 절 기본 구문SELECT 컬럼명 FROM 테이블명 WHERE 조건;🔹 조건에 맞는 데이터만 조회됨🔹 조건을 만족하지 않는 데이터는 결과에 포함되지 않음✅ WHERE 절 사용 예제📌 1. 특정 값과 일치하는 데이터 조회 (= 연산자)SELECT * FROM 회원정보 WHERE 회원등급 = 'VIP';회원등급이 'VIP'인 회원만 조회📌 2. 크거나 작은 값 조회 (> = SELECT * FROM 주문내역 WHERE..

[SQL] NULL 데이터 처리(ISNULL, NULLIF, NVL, COALESCE)

데이터베이스를 설계하고 운영할 때, 모든 데이터가 항상 값으로 채워지는 것은 아닙니다. 예를 들어, 회원 테이블에서 사용자의 주소나 전화번호가 아직 입력되지 않은 경우, 해당 필드는 NULL 값으로 저장됩니다. 이처럼 NULL은 “데이터가 존재하지 않음”을 나타내며, 데이터의 누락이나 아직 입력되지 않은 상태를 표현하는 중요한 개념입니다. SQL 자격증을 준비하는 여러분에게 NULL의 특성과 이를 적절하게 처리하는 방법은 매우 중요한 주제입니다.1. NULL 특징NULL은 값이 존재하지 않음을 의미하며, 이는 0이나 빈 문자열과는 다릅니다.연산 시 주의점 - NULL과의 연산은 결과가 NULL이 될 가능성이 크므로, 이를 처리하지 않으면 의도치 않은 결과를 가져올 수 있습니다.2. NULL 데이터 처리 ..

728x90
반응형