본문 바로가기

SQL

서브 쿼리(SUBQUERY) 1. 서브 쿼리란? 서브쿼리란 SQL 문장 내에서 다른 SQL 문장을 내포하는 쿼리를 말한다. 한 SQL 문장이 실행될 때, 내부적으로 다른 SQL 문장이 먼저 실행되고, 그 결과를 바탕으로 외부 SQL 문장이 실행되는 방식으로 작동한다. 2. 서브 쿼리와 성능의 상관관계 서브쿼리는 데이터를 필터링, 정렬, 집계하는데 유용하고 복잡한 데이터 관계 해결에도 쓰이는 강력한 도구이지만, 성능에 상당한 영향을 미칠 수 있음에 유의해야 한다. 서브쿼리로 인한 성능 저하를 개선하는 방법으로는 무엇이 있을까? 조인으로 대체 : 조인으로 대체가 가능한 경우라면 서브쿼리 대신 조인을 사용하는 것이 좋다. 조인은 데이터베이스가 더 효율적으로 처리할 수 있는 보다 최적화된 방법이 될 수 있다. 인덱스 활용 : 서브쿼리와 메.. 더보기
외래 키(Foreign Key) 1. '외래 키(Foreign Key)' 란 무엇인가? 외래 키는 하나의 테이블에 있는 필드(또는 필드 집합)로 다른 테이블의 기본 키(Primary Key)를 참조한다. 두 테이블간의 관계, 논리적인 연결을 생성하는데 사용된다. 데이터베이스에서 데이터 간의 관계를 명확히 하고, 데이터의 정확성과 무결성을 유지하는 역할을 한다. 외래 키 제약 조건을 설정하여 참조 무결이 위반되는 데이터의 추가, 수정, 삭제를 방지할 수 있다. 예시 1. 고객과 주문 상황 : 고객이 온라인 쇼핑몰에서 주문을 한다. DB 설계 : 'Customers' 테이블에는 고객 정보가 저장되며 'Orders' 테이블에는 주문 정보가 저장된다. 외래 키의 사용 : Orders 테이블의 CustomerID(외래 키) ... Custome.. 더보기
MySQL 메모 및 Tip 1. 데이터베이스(스키마) 데이터베이스 : 데이터를 저장하는 공간 = 스키마 : MySQL안의 데이터베이스. 데이터베이스와 동일한 용어라고 생각해도 된다. 데이터베이스 만들기(선) -> 테이블 만들기(후) 데이터베이스를 먼저 만들어야 그 안에 테이블을 생성할 수 있고 그 테이블 안에서 데이터의 입력/수정/삭제/조회 등이 가능하다. SHOW DATABASES; USE mydata; SHOW TABLES; DESC customer_db; 2. 테이블 구조 변경하기 1. 테이블에 새로운 컬럼 추가 ALTER TABLE mytable ADD COLUMN model_type varchar(10) NOT NULL; 2. 테이블 컬럼 타입 변경 ALTER TABLE mytable MODIFY COLUMN name v.. 더보기