2025/05 77

(GB) GROUP BY 와 HAVING 절 - 22

더보기1.GROUP BY 절이란GROUP BY 절은 SQL에서 특정 열의 값에 따라 행 집합을 요약된 그룹으로 나누는데 사용됩니다.주로 집계 함수(SUM, AVG , MAX, MIN , COUNT 등)와 함께 사용되어 각 그룹에 대한 요약 정보를 제공합니다.특징- 데이터를 원하는 그룹으로 나눌 수 있음.-그룹화할 컬럼명을 SELECT 절과 GROUP BY절에 추가.집계 함수와 함께 사용되는 상수는 GROUP BY 절에 포함하지 않아도 됨- 주의 : 비집계 컬럼은 GROUP BY 포함해야 하며, MySQL의 ONLY_FULL_GROUP_BY 모드에서 이를 위반하면 오류 발생 예시 select class, AVG(score) AS AveragescoreFROM tb_studentGROUP BY clas..

MySQL 2025.05.16

(DB) MySQL ANSI SQL 표준과 주요 함수 - 21

ANSL SQL 표준이란?ANSL (미국구가표준협회,American National Standreds Institute)는 데이터베이스 관리 시스템(DBMS)의 호환성, 일관성 , 이식성을 보장하기 위해 SQL(Strctured Query Language) 표준을 정의합니다.ANSL SQL 은 SQL: 1992, SQL: 1999 , SQL: 2011, SQL: 2016등 버전으로 발전하며, 각 버전은 윈도우 함수,JSON 지원 등 새로운 기능을 추가했습니다. 주요 목표 :호환성 : 다양한 DBMS 간 쿼리 호환성 보장.일관성 : SQL 문법과 기능의 일관된 사용 제공.이식성 : SQL 코드의 DBMS간 이식서 향상.-------------------------------------------------..

카테고리 없음 2025.05.16

(DB) 테이블 복사 및 데이터 추가 - 20

데이터베이스에서 한 테이블의 구조나 데이터를 다른 테이블로 복사하는 작업은 여러 상황에서 유용하게 사용됩니다테이블의 구조만을 복사하거나. 구조와 테이터 모두를 복사할 수 있습니다. 1.테이블 구조만 복사하기 더보기테이블의 구조만을 새로운 테이블로 복사하고자 할 때, 데이터는 복사하지 않고 구조만 생성합니다.create table 새_테이블as select * from 기존_테이블 where 1=0;-- as 는 create table 과 secelt 사이를 연결하는 역활을 합니다.-- 즉, select 쿼리의 결과(컬럼 구도와 데이터)를 새 테이블(새_테이블)의 정의로 사용하도록 사용하도록지시 합니다.-- 테스트create table new_student as select * from tb_studen..

MySQL 2025.05.16

(DB) 트랜잭션 이란 & (COMMIT,ROLLBACK) -19

1.트랜잭션이란?더보기더보기1.트랜잭션이란?트랙잭션은 데이터베이스에서 여러 SQL문을 하나의 작업 단위로 묶어 실행합니다. 모든 작업이 성공해야 적용되며, 하나라도 실패하면 전체가 취소됩니다. 요약-트랜잭션은 데이터베이스에서 하나의 논리적 작업 단위입니다.-여러 SQL 명령어 묶어 "전부 성공"하거나 "전부 실패"하도록 보장합니다.-실행활 예: 은행 송금- A가 B에게 5만 원 송금: A 계좌에서 5만원 감소, B 계좌에서 5만원 증가-두 작업이 모두 성공해야 데이터가 올바름 트랜젹션의 중요성-데이터 무결성 유지 : 부분 성공/실패로 인한 오류 방지- 예: 송금 중 시스템 오류 발생 시, 돈이 사라지거나 중복 지급 되지 않도록 보호 질문 : 트랜잭션이 없다면 은행 송금에서 어떤 문제가 생길까?트랜잭션이..

MySQL 2025.05.16

(DB) MySQL 별칭, 변수 선언, IF 문 - 18

학습 목표- MySQL에서 변수를 선언하고 사용하는 방법, 조건문(if)을 사용하는 방법을 알아보자 1. 별칭(Alias)에 대해서 살펴 보자. 더보기select 100, '반장';select 100 as student_id, 'captain' as title; MySQL에서 AS 키워드는 별칭(Alias)을 지정할 때 사용합니다.즉, 컬럼명이나 테이블명에 별명을 붙여 결과를 더 읽기 쉽게 하거나, 복잡한 표현식을 간단하게 만들 때 사용합니다. |컬럼에 별칭 주기select 100 as student_id, 'captain' as title; | 컬럼에 별칭 주기SELECT s.name FROM students as AS s; | AS 생략 가능SELECT 100 as student_id,'capta..

MySQL 2025.05.16

(JDBC) JDBC 구성 요소(아키텍처) - 2

JDBC 개요JDBC(Java Database Connectivity)는 Java 애플리케이션이 데이터베이스와 상호작용할 수 있도록 하는 표준API입니다 JDBC 여러 구성 요소로 이루어져 있으며, 각 요소는 데이터베이스 연결, 쿼리 실행 결과 처리등의 역할 분담합니다. JDBC 구성 요소- Driver : 특정 데이터베이스와의 연결을 처리하는 인터페이스 구현.- DriverManager : JDBC 드라이버를 관리하고 데이터베이스 연결을 설정- Connection : 데이터베이스와 세션을 나타냄.- Statement : SQL 쿼리를 실행.-ReasultSet : 쿼리 결과를 저장하고 탐색.-SQLException: JDBC 작업 중 발생하는 예외 처리 1. Driver더보기설명 : java.sql.D..

DB의 접근기술 2025.05.14

(DB)MySQL JOIN - 17

테이블에 기준을 FROM 절에 나오는 테이블 기준입니다. JOIN은 두 개 이상의 테이블에서 관련된 데이터를 결합하여 새로운 결과를 생성하는 데이터베이스 연산입니다. 1.1 JOIN이 필요한 이유-데이터베이스는 중복을 최소화하기 위해 데이터를 여러 테이블에 나눠 저장합니다.-실제 사용 시, 분산되 데이터를 통합해야 할 때가 많습니다.-예 : 학생정보(tb_student)와 성적 등급 정보(tb_grade)를 결합하여 학생별 점수를 확인. 1.2 JOIN의 기본 개념 -JOIN은 테이블 간 공통 열(예: 외래 키와 기본 키)을 기준으로 데이터를 결합합니다.-MySQL에서는 INNER JOIN, LEFT JOIN, RIGHT JOIN을 지원하며 ,FULL OUTER JOIN은 지원하지 않습니다. 2. 테..

MySQL 2025.05.14

(JAVA)Java.time 패키지 - 11

- Date 클래스 Java 1.0부터 제공된 기본 날짜 /시간 클래스, 특정 시점(밀리초 단위)을 표현- Calendar 클래스 Java1.1에서 Date의 단점을 개선하려 도입. 연/월/일 단위 조작 가능. package time;import java.util.Calendar;import java.util.Date;public class oldDateExample { public static void main(String[] args) { Date now = new Date(); System.out.println("현재 시간 : " + now); //직접 개발자가 못하게 막아 놓았다. //Calendar cal = new Calendar(); ..

728x90