sql
-
[Database] SQL WHERE 구문 정리: 정의와 활용 예시업무 자동화/Database 2025. 11. 18. 23:40
1. WHERE 구문의 정의역할: FROM 절에서 가져온 데이터 중 특정 조건을 만족하는 행(ROW)만 필터링하는 단계특징:- 집계 함수(SUM, COUNT 등) 결과는 아직 존재하지 않으므로 사용할 수 없음- 조건식은 행 단위에서만 평가됨SELECT * FROM orders WHERE status = 'PAID' AND order_date >= DATE '2025-01-01'; 2. WHERE 구문의 기본 활용 예시단일 조건: 특정 컬럼 값이 일치하는 행만 조회SELECT *FROM customer WHERE city = 'Seoul';복합 조건: AND, OR, NOT을 조합해 다양한 조건 처리SELECT * FROM orders WHERE status = 'PAID' OR status = 'SHIP..
-
[Database] SELECT 문 실행 순서업무 자동화/Database 2025. 11. 16. 19:15
SELECT 문 실행 순서 정리FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY1. SELECT 문 기본 구조와 실행 순서1-1. SELECT 문 기본 형태관계형 데이터베이스에서 가장 많이 사용하는 조회 쿼리여러 절(Clause)이 조합되어어떤 행을, 어떻게 묶고, 무엇을, 어떤 순서로 보여줄지 결정SELECT [DISTINCT] 컬럼/표현식FROM 테이블/뷰[WHERE 조건][GROUP BY 그룹기준][HAVING 그룹조건][ORDER BY 정렬기준][LIMIT 행수 [OFFSET 시작행]]작성 순서SELECT → FROM → WHERE → GROUP BY → HAVING → ORDER BY → LIMIT1-2. 논리적 실행 순서실제로 DB가 해석하는 논..
-
[Database] SQL 서브쿼리(Subquery) 정리: 개념, 위치별 활용업무 자동화/Database 2025. 11. 15. 07:02
1. 서브쿼리 정의 및 분류 기준1-1. 정의서브쿼리(Subquery)다른 SQL문 안에 중첩된 SELECT 문→ “먼저 이 쿼리로 집합을 만들고, 그 결과를 밖에서 다시 사용”하는 구조주로 사용되는 위치SELECT 절: 스칼라 서브쿼리 (값 1개)FROM 절: 인라인 뷰 / 파생 테이블WHERE / HAVING 절: 필터링 조건 (IN, EXISTS, =, >, ANY, ALL 등) 1-2. 분류 기준상관 vs 비상관비상관 서브쿼리:안쪽 쿼리가 바깥 쿼리와 독립적. 먼저 한 번 실행 후 결과를 재사용상관 서브쿼리:안쪽 쿼리가 바깥 쿼리의 컬럼을 참조 → 바깥 행마다 반복 실행되는 형태반환 형태단일 행(single row): 값 1개 (=, >, 다중 행(multi row): 여러 행 (IN, EXIST..
-
[Database] SQL JOIN 총정리: INNER/OUTER/SEMI/ANTI/CROSS, NATURAL/USING, UNION업무 자동화/Database 2025. 11. 14. 08:57
요약JOIN 목적여러 테이블의 **관계(키)**를 기준으로 행 결합기본 축INNER(교집합), OUTER(남는 쪽 보존: LEFT/RIGHT/FULL), SEMI/ANTI(존재 유무만), CROSS(카테시안)키 문법JOIN … ON a.key = b.key / USING(key) / NATURAL(동명 컬럼 자동 매칭, 권장 X)위험 포인트ON 누락·항상 참 조건 → CROSS JOIN(카테시안 곱) 발생UNION과 차이JOIN=열(칼럼) 합치기, UNION=행(로우) 합치기성능 포인트선택성 높은 조건 우선, 인덱스·통계 최신화, 불필요 컬럼·중복 제거, 실행계획 확인 1. JOIN 기본: 개념·형태1-1. INNER JOIN정의: 조인 키가 일치하는 행만 반환(교집합).예시 SELECT a.id, a...
-
[Database] SQL 카테시안 곱: 원인, 증상, 재현 예시, 예방 체크리스트업무 자동화/Database 2025. 11. 13. 08:45
요약정의조인 조건 누락·오류로 인해 두 테이블의 모든 행이 곱셈처럼 결합되는 현상대표 원인JOIN … ON 누락, ON 1=1/항상 참 조건, 잘못된 키 매칭(타 컬럼)전형 증상결과 행 수가 A행수 × B행수로 폭증, 중복 로우·지표 왜곡빠른 진단EXPLAIN에서 CROSS JOIN/카티션 표기, 행 수 급증 여부, 카디널리티 비정상안전 대책명시적 조인 키, PK/FK 제약, 스키마·인덱스 점검, 테스트 쿼리로 행 수 확인 1. 개념 정의: 조인 대상 테이블 사이에 유효한 조인 조건 부재 또는 항상 참이 되는 조건 사용으로, 두 테이블의 모든 행이 서로 결합되는 현상.영향: 결과 행 수 폭증, 중복 합산에 따른 리포트/집계 왜곡, 불필요한 I/O와 비용 증가. 2. 최소 재현 예시2-1. 샘플 테이블--..
-
[Database] SQL의 정규표현식: 정의, 핵심 패턴 표, DBMS별 사용법, 이메일·전화번호·주소 예시업무 자동화/Database 2025. 11. 12. 13:44
1. 정규표현식 개념정의: 문자열 패턴 기술 언어. 텍스트 검색, 검증(밸리데이션), 치환, 추출 목적활용 목적: 입력값 형식 검증, 로그/메시지 패턴 탐지, 코드/키 추출, 데이터 정제·마스킹장점: 간결한 패턴 정의, 복합 규칙 표현력, 다양한 DB 내장 함수 연계주의점: 과도한 복잡도로 인한 가독성 저하, 대용량에서의 성능 이슈, DBMS별 문법 차이 2. 자주 쓰는 패턴 요약 표범주기호/패턴의미예시앵커^ / $문자열 시작 / 끝^abc$ → 전체가 정확히 abc수량자* + ?0+ / 1+ / 0 또는 1\d+ 숫자 1글자 이상수량자(한정){m} {m,} {m,n}정확히 m / m 이상 / m~n\d{5} → 5자리 숫자문자클래스. / [abc] / [^abc]임의 1글자 / a,b,c 중 1 / 제..
-
[Database] SQL Window 함수 개념과 사용 예시업무 자동화/Database 2025. 11. 11. 12:25
1. Window 함수란?Window 함수는“현재 행을 기준으로, 관련된 여러 행들을 하나의 ‘창(Window)’으로 묶어 놓고 그 안에서 계산하는 함수” 입니다.형식은 공통적으로함수명(...) OVER ( [PARTITION BY 그룹기준] [ORDER BY 정렬기준] [ROWS/RANGE ...] )일반 GROUP BY 집계와 달리:결과를 한 줄로 줄이지 않고,각 행은 그대로 두면서,그 행이 속한 그룹/구간 기준의 합계·순위·이전 행 비교·비율 등을 같이 보여줄 때.예를 들어:고객별 구매 내역 + 고객별 누적 금액부서별 급여 순위전월 대비 증감(LAG)전체 대비 매출 비율, 누적 분포이걸 깔끔하게 해주는 게 Window 함수입니다.아래는 실무에서 자주 쓰는 4가지 카테고리 표입니..