DBMS19 [데이터베이스] SQL 연습문제 문제는 모두 주석에 적어놓았습니다! -- 1번: 데이터 조회 및 조인 SQL-- 고객별 총 주문 금액과 주문 횟수를 조회하는 쿼리SELECT c.customer_id, c.customer_name, COUNT(o.order_id) AS total_orders, -- 주문 횟수 COALESCE(SUM(o.total_amount), 0) AS total_spent -- 총 주문 금액 (NULL 방지)FROM day3_customers cLEFT JOIN day3_orders o ON c.customer_id = o.customer_idGROUP BY c.customer_id, c.customer_name;-- 2번: 데이터 조회 및 조인 SQL-- 카테고리별 총 판매액과 판매.. 2025. 2. 6. [데이터베이스] SQL JOIN문 JOIN : 두 개 이상의 테이블을 연결하여 데이터를 조회데이터베이스는 일반적으로 정규화를 통해 여러 테이블로 분리되므로, 데이터를 효과적으로 활용하기 위해서는 JOIN을 사용하여 테이블 간의 관계를 결합해야 한다. [대표적인 SQL JOIN의 5가지 종류]1. INNER JOIN두 테이블에서 공통된 값이 있는 행만 반환한다. 일치하지 않는 데이터는 결과에서 제외된다. (사용 예제)SELECT A.id, A.name, B.order_idFROM Customers AINNER JOIN Orders B ON A.id = B.customer_id; 2. LEFT JOIN (LEFT OUTER JOIN)왼쪽 테이블의 모든 행을 반환하고, 오른쪽 테이블의 일치하는 데이터가 없으면 NULL을 반환한다. (사용 예제.. 2025. 2. 6. [데이터베이스] 트랜잭션 개념과 관리 방안 수립 데이터베이스에서 트랜잭션 관리는 필수적인 요소이다. 데이터의 무결성을 유지하고, 동시 접근을 효율적으로 제어하며, 장애 발생 시 복구할 수 있도록 설계해야 한다. 이를 위해 트랜잭션 관리 방안을 수립하는 것이 중요하다. 이번 포스팅에서는 트랜잭션 개념과 트랜잭션 관리 방안, 그리고 트랜잭션의 상태 변화까지 알아보고자 한다! ㅁ트랜잭션(transaction): 데이터베이스의 상태를 변화시키기 해서 수행하는 작업의 단위 (트랜잭션 관리의 중요성)하나의 트랜잭션은 여러 개의 작업(쿼리)으로 구성될 수 있으며, 모든 작업이 성공적으로 완료되어야만 데이터베이스에 반영된다. 트랜잭션 관리를 통해 다음과 같은 기능을 제공할 수 있다.데이터 무결성 유지동시 접근 제어(락을 사용)장애 발생 시 복구 기능 제공 ACI.. 2025. 2. 6. [데이터베이스] 대표적인 데이터 모델링 기법 4가지 https://claremont.tistory.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-ep1-DB-%EB%AA%A8%EB%8D%B8 [데이터베이스] ep1) DB 모델ㅁ논리적 데이터 모델들1. 계층형 데이터 모델 2. 네트워크형 데이터 모델 3. 관계형 데이터 모델(RDB: Relational DataBase)- 우리는 이 RDB에 대해 앞으로 지겹도록 다룰 것이다 ㅁRDB 데이터 모claremont.tistory.com 데이터 모델링은 데이터를 체계적으로 구조화하고, 데이터 간의 관계를 명확하게 정의하는 과정이다. 이를 통해 데이터베이스 설계의 기초를 마련하고, 효율적인 데이터 관리가 가능해진다. 데이터 모델링에는 .. 2025. 2. 6. [데이터베이스] 표준화 명세서와 정규화 과정 1. 데이터 표준화 명세서 예시 (명명 규칙)테이블 명: 복수형 사용 (students, subjects, professors, enrollments)컬럼 명: 소문자 및 스네이크 케이스 사용 (student_id, course_code, professor_id 등)데이터 타입: 일관된 데이터 타입 사용 (VARCHAR, INT, FLOAT 등)키 명: id 사용 (표준 컬럼 정의)컬럼명데이터 타입설명student_idINT학번 (기본키)student_nameVARCHAR학생 이름majorVARCHAR전공subject_idVARCHAR과목 코드 (기본키)subject_nameVARCHAR과목 이름gradeFLOAT학점professor_idVARCHAR교수 ID (기본키)professor_nameVARCH.. 2025. 2. 5. [MySQL] 기본 명령어 (메타데이터 조회 명령어) https://claremont.tistory.com/entry/MariaDB-%EC%84%A4%EC%B9%98-%EC%82%AC%EC%9A%A9-%EB%B0%A9%EB%B2%95 MariaDB 설치 + 사용 방법MariaDB는 MySQL에서 포크된 데이터베이스 관리 시스템(DBMS)이기 때문에 MySQL을 대체해서 많이 사용하곤 한다 (문법과 기능이 매우 유사) 주의! 도커가 설치되어 있어야 한다터미널에 명령어 입력# 1claremont.tistory.com내용이 중복되므로 참고하면 좋다 터미널로 MySQL 접속: mysql -u [사용자명] -pmysql -u root -p # root 사용자로 접속 현재 DBMS 서버에 있는 모든 데이터베이스를 보여준다SHOW DATABASES; USE flas.. 2024. 10. 13. MySQL 스토리지 엔진 InnoDB에 대해서 https://claremont.tistory.com/entry/MySQL%EC%9D%98-%EC%8A%A4%ED%86%A0%EB%A6%AC%EC%A7%80-%EC%97%94%EC%A7%84InnoDB-MyISAM-Memory-CSV-Archive MySQL의 스토리지 엔진(InnoDB, MyISAM, Memory, CSV, Archive)MySQL의 스토리지 엔진(Storage Engine)은 데이터베이스에서 데이터를 저장하고 관리하는 방식을 정의하는 핵심 구성 요소이다. 각 스토리지 엔진은 고유한 특성과 기능을 제공하여 다양한 요구사항claremont.tistory.com InnoDB는 MySQL 데이터베이스 관리 시스템에서 널리 사용되는 스토리지 엔진(Storage Engine) 중 하나이다. 스토.. 2024. 10. 5. MySQL의 스토리지 엔진(InnoDB, MyISAM, Memory, CSV, Archive) MySQL의 스토리지 엔진(Storage Engine)은 데이터베이스에서 데이터를 저장하고 관리하는 방식을 정의하는 핵심 구성 요소이다. 각 스토리지 엔진은 고유한 특성과 기능을 제공하여 다양한 요구사항과 사용 사례에 맞춰 최적의 성능과 기능을 제공할 수 있도록 한다. MySQL은 여러 스토리지 엔진을 지원하여 사용자가 필요에 따라 적합한 엔진을 선택할 수 있도록 한다. 스토리지 엔진의 주요 특징데이터 저장 방식각 스토리지 엔진은 데이터를 저장하는 방식이 다르다. 예를 들어, 일부 엔진은 행 기반 저장을 사용하고, 다른 엔진은 열 기반 저장을 사용할 수 있다.트랜잭션 지원 여부모든 스토리지 엔진이 트랜잭션을 지원하는 것은 아니다. 트랜잭션 지원 여부는 데이터의 일관성과 무결성을 유지하는 데 중요한 역할을.. 2024. 10. 5. [데이터베이스] 빅데이터(Big Data) 빅데이터(Big Data): 기존의 관리 방법이나 분석 체계로는 처리하기 어려운 방대한 양의 정형, 반정형, 비정형 데이터의 집합 [TTA 정보통신용어사전] 빅데이터 유형 3가지- 정형 데이터(Structed Data): 형식과 구조가 있는 데이터 - 반정형 데이터(Semi-Structed Data): 형식과 구조가 변경될 수 있는 데이터 데이터의 구조 정보를 데이터와 함께 제공하는 파일 형식의 데이터e.g. HTML, XML, JSON(Javascript Object Notation), RDF(Resource Description, Framework)질의 처리가 어려워 데이터 분석에 사용 시 정형 데이터로 변환하여 사용한다- JSON 데이터는 CSV(Comma Separated Value) 또는 테이.. 2024. 7. 3. 이전 1 2 3 다음