본문 바로가기

Database/MySQL8

[MySQL] SQL 내장함수 * MySQL 내장함수: 상수나 속성 이름을 입력 값으로 받아 단일 값을 결과로 반환  => 모든 내장 함수는 최초 선언 시, 유효한 입력 값을 받아야 하고, 위배될 경우 에러 메시지가 출력 1. 숫자 함수- 기본 사칙 연산자와 나머지(%) 연산자 기호, 내장 함수 제공ABS(숫자)숫자의 절댓값을 계산함. 예) ABS(-4.5) → 4.5CEIL(숫자)소수점 무조건 올림. 예) CEIL(4.1) → 5FLOOR(숫자)소수점 무조건 버림. 예) FLOOR(4.1) → 4ROUND(숫자, m)숫자의 반올림, m은 반올림 기준 자릿수. 예) ROUND(5.36, 1) → 5.40LOG(n, 숫자)숫자의 자연로그 값을 반환. 예) LOG(10) → 2.30259POWER(숫자, n)숫자의 n제곱 값을 계산. 예.. 2024. 5. 12.
[MySQL] SQL 프로그래밍 (IF, CASE, WHILE, 동적 SQL) * 스토어드 프로시저: MySQL에서 프로그래밍 기능이 필요할 때 사용하는 데이터베이스 개체 * 스토어드 프로시저의 기본 구조 DELIMITER $$ CREATE PROCEDURE 스토어드_프로시저_이름() BEGIN 이 부분에 SQL 프로그래밍 코딩 END $$ DELIMITER; CALL 스토어드_프로시저_이름(); - 스토어드 프로시저는 DELIMITER $$ ~ END $$ 안에 작성하고 CALL로 호출 - 구분 문자로 $$를 많이 사용하지만, /, &, @ 등을 사용해도 상관없음. 다만, 다른 기호와 중복될 수 있으므로 기호 2개를 연속으로 사용하는 것이 좋음. 1. IF 문 1) IF문 IF THEN SQL 문장들 END IF; * SQL문이 두 문장 이상 처리되어야 할 때는 BEGIN ~ E.. 2023. 12. 23.
[MySQL] 조인(Join) * 조인: 두 개의 테이블을 서로 묶어서 하나의 결과를 만들어 내는 것 1. 내부조인 - 일대다 관계(one to many) : 한쪽 테이블에는 하나의 값만 존재해야 하지만, 연결된 다른 테이블에는 여러 개의 값이 존재할 수 있는 관계를 의미함. 주로 기본 키(PK)와 외래 키(FK) 관계로 맺어져 있어, PK-FK 관계라고 부름. 상호 조인은 제외! - 내부 조인의 기본 형식 SELECT FROM INNER JOIN ON [WHERE 검색 조건] * INNER JOIN을 JOIN이라고만 써도 INNER JOIN으로 인식함 ! * 두 개의 테이블을 조인할 때 동일한 열 이름이 존재한다면, 테이블_이름.열_이름 형식으로 꼭 표기하기 * 내부 조인을 조금 더 간결하게 표현하려면 별칭(alias)를 이용한다 .. 2023. 12. 22.
[MySQL] 데이터 형식 (숫자, 문자, 날짜형) 1. MySQL의 데이터 형식 1) 숫자형 - 정수형: 소수점이 없는 숫자 데이터 형식 바이트 수 숫자 범위 TINYINT 1 -128 ~ 127 SMALLINT 2 -32,768 ~ 32,767 INT 4 약 -21억 ~ + 21억 BIGINT 8 약 -900경 ~ + 900경 * Out of range 오류: 입력값의 범위가 벗어났음을 의미 * UNSIGNED 예약어: 정수형에 해당 예약어를 붙이면 범위가 0부터 지정 (예: TINYINT는 0~255 사이의 수가 됨) - 실수형: 소수점이 있는 숫자를 저장할 때 사용 데이터 형식 바이트 수 숫자 범위 FLOAT 4 소수점 아래 7자리까지 표현 DOUBLE 8 소수점 아래 15자리까지 표현 * 과학 기술용 데이터가 아닌 이상 FLOAT 형이면 충분 2.. 2023. 12. 22.
[MySQL] 데이터 변경을 위한 SQL문 : INSERT, UPDATE, DELETE 1. 데이터 입력: INSERT INSERT는 데이터를 삽입하는 명령 INSERT INTO 테이블이름 [(열1, 열2, ...)] VALUES (값1, 값2, ...); INTO : 튜플을 삽입할 테이블의 이름과 속성 이름 VALUES : 삽입할 속성 값들을 나열 => INTO 절의 속성 이름과 VALUES 절의 속성 값은 순서대로 일대일 대응되어야 함. - 테이블 이름 다음에 나오는 열은 생략 가능. 단, 열 이름을 생략할 경우에 VALUES 다음에 나오는 값들의 순서 및 개수는 테이블을 정의할 때의 열 순서 및 개수가 동일해야 함. - 입력하지 않으면, 아무것도 없다는 의미의 NULL 값을 의미함. - 열의 순서를 바꿔서 입력하고 싶은 경우, 열 이름과 값을 원하는 순서에 맞춰 써주면 됨. INSER.. 2023. 12. 11.
[MySQL] SQL 기본 문법 : SELECT [실습용 데이터베이스 구축 코드] -- 데이터베이스 만들기 DROP DATABASE IF EXISTS market_db; CREATE DATABASE market_db; -- 회원 테이블(member) 만들기 USE market_db; CREATE TABLE member ( mem_id CHAR(8) NOT NULL PRIMARY KEY, -- 회원 아이디 (PK) mem_name VARCHAR(10) NOT NULL, -- 이름 mem_number INT NOT NULL,-- 인원수 addr CHAR(2) NOT NULL, -- 주소(경기, 서울, 경남 식으로 2글자만 입력) phone1 CHAR(3),-- 연락처의 국번(02, 031, 055 등) phone2 CHAR(8),-- 연락처의 나머지 전화.. 2023. 12. 8.
[MySQL] 실전용 SQL 미리 맛보기 1. 프로젝트 진행 단계 (폭포수 모델의 관점에서) : 프로젝트 계획 → 업무 분석 → 시스템 설계 → 프로그램 구현 → 테스트 → 유지보수 2. 데이터베이스 모델링 (Database Modeling) 우리가 살고 있는 세상에서 사용되는 사물이나 작업을 DBMS의 데이터베이스 개체로 옮기기 위한 과정 데이터베이스 모델링에는 정답이 따로 없음. 다만, 효율적으로 모델링 할 필요가 있다는 점에서 실무 경험이 필요. 데이터 모델링은 2가지 단계로 이루어진다 ① 개념적 데이터 모델링 (conceptual modeling) 현실 세계의 중요 데이터를 추출하여 개념 세계로 옮기는 작업 예) 개체-관계 모델 (ER 다이어그램, Entity-Relationship Diagram) ② 논리적 데이터 모델링 (logica.. 2023. 12. 8.
[MySQL] 데이터베이스와 SQL 1. 중요 용어 정리 한글 용어 영문 용어 약자 설명 데이터베이스 Database DB 데이터 저장소 데이터베이스 관리 시스템 Database Management System DBMS 데이터베이스를 운영, 관리하는 소프트웨어 구조화된 질의 언어 Structured Query Language SQL 관계형 DBMS에서 사용되는 언어 관계형 데이터베이스 관리 시스템 Relational Database Management System RDBMS 테이블이라는 최소 단위로 구성된 DBMS 테이블 table 표 형태로 구성된 2차원 구조. 열과 행으로 이루어져 있으며 RDBMS의 핵심 개체 표준 SQL Standard SQL 국제표준화기구에서 지정하는 SQL의 표준. 대부분의 DBMS 회사가 표준 SQL를 준수함... 2023. 12. 7.