# 평균 일일 대여 요금 구하기 문제 설명 다음은 어느 자동차 대여 회사에서 대여중인 자동차들의 정보를 담은 CAR_RENTAL_COMPANY_CAR 테이블입니다. CAR_RENTAL_COMPANY_CAR 테이블은 아래와 같은 구조로 되어있으며, CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS 는 각각 자동차 ID, 자동차 종류, 일일 대여 요금(원), 자동차 옵션 리스트를 나타냅니다. COLUMN NAMETYPENULLABLECAR_IDINTEGERFALSECAR_TYPEVARCHAR(255)FALSEDAILY_FEEINTEGERFALSEOPTIONSVARCHAR(255)FALSE 자동차 종류는 '세단', 'SUV', '승합차', '트럭', '리무진' 이 있습니다. 자동차 옵션 리스트..
트랜잭션트랜잭션은 데이터베이스에서 수행되는 하나 이상의 작업의 논리적인 단위이다.ACID 라는 속성을 가지고 있다. 원자성(Atomicity)하나의 연산이라도 실패하면 트랜잭션 전체가 실패일관성(Consistency)트랜잭션이 실행되기 전과 후에 데이터베이스는 항상 일관된 상태격리성(Isolation)여러 트랜잭션이 동시에 실행될 때, 각 트랜잭션은 다른 트랜잭션의 작업에 영향을 받지 않고 독립적으로 수행되는 것처럼 보여야 한다.지속성(Durability)트랜잭션이 성공적으로 완료되면 그 결과는 영구적으로 유지되어야 한다. 정규화란?정규화란 데이터베이스에서 이상 현상과 중복을 방지하기 위해 분리하는 작업이다.장점은 이상현상(삽입, 갱신, 삭제) 문제점을 해결하고 구조 확장시 구조를 변경하지 않아도 되..

# 흉부외과 또는 일반외과 의사 목록 출력하기 다음은 종합병원에 속한 의사 정보를 담은DOCTOR 테이블입니다. DOCTOR 테이블은 다음과 같으며 DR_NAME, DR_ID, LCNS_NO, HIRE_YMD, MCDP_CD, TLNO는 각각 의사이름, 의사ID, 면허번호, 고용일자, 진료과코드, 전화번호를 나타냅니다.DOCTOR 테이블에서 진료과가 흉부외과(CS)이거나 일반외과(GS)인 의사의 이름, 의사ID, 진료과, 고용일자를 조회하는 SQL문을 작성해주세요. 이때 결과는 고용일자를 기준으로 내림차순 정렬하고, 고용일자가 같다면 이름을 기준으로 오름차순 정렬해주세요. SELECT DR_NAME, DR_ID, MCDP_CD, date_format(HIRE_YMD,'%Y-%m-%d') as HIRE_..
DATE_FORMAT DATE_FORMAT 함수는 MySQL에서 날짜와 시간 데이터를 다양한 형식으로 변환할 때 사용된다. 이 함수는 날짜, 시간, 타임스탬프 데이터 타입의 값을 문자열로 변환할 때 특히 유용하여 날짜와 시간 값을 원하는 형식의 문자열로 변환할 때 사용한다. 예를 들어, 'YYYY-MM-DD HH:MM:SS' 형식의 날짜와 시간을 'YYYY년 MM월 DD일'과 같이 더 읽기 쉬운 형식으로 변경할 수 있다. 기본 형식 DATE_FORMAT(date, format) date : 변환할 날짜 및 시간 값이다. format : 반환될 문자열의 형식을 지정한다. 형식은 특정 문자열로 지정되며, 이 문자열 내에서 특정 문자는 날짜 및 시간 구성 요소를 나타내는 데 사용된다. 형식 지정자 포맷문자 설..
1장 데이터베이스 (Database, DB) 데이터의 집합, 데이터의 저장소 데이터베이스 관리 시스템(Database Management System, DBMS) 대량의 데이터베이스를 효율적으로 관리하고 운영하기 위한 시스템 또는 소프트웨어 대표적으로 MySQL, 오라클(Oracle), SQL 서버(Server), MariaDB 등이 있다. 관계형 데이터베이스 관리 시스템 (Relational DtaBase Management System, RDBMS) 테이블이라는 최소 단위로 이루어진 관계형 DBMS 구조화 질의어 (Structured Query Language, SQL) RDBMS에서 데이터를 구축, 관리하고 활용하기 위해 사용되는 언어, 대부분의 DBMS 회사에서는 국제 표준화기구에서 지정한 표준 ..

chapter07. 스토어드 프로시저 07-1. 스토어드 프로시저 사용 방법 sql은 데이터베이스에서 사용되는 언어이다. sql을 사용 시 다른 프로그래밍 언어의 기능이 필요할 때가 있다. 그럴 경우 mysql의 스토어드 프로시저를 사용하는데 스토어드 프로시저는 sql에 프로그래밍 기능을 추가해서 일반 프로그래밍 언어와 비슷한 효과를 낸다. 스토어드 프로시저 기본 스토어드 프로시저의 개념과 형식 스토어드 프로시저(저장 프로시저)란 mysql에서 제공하는 프로그래밍 기능이다. 스토어드 프로시저는 쿼리 문의 집합으로 볼 수 있는데 이때 집합이라는 말은 단위작업을 말한다. (단위작업이란 예를 들어 게시글을 불러올떄 select 후 insert하여 게시글을 db에서 불러 오는데 이러한 과정을 보고 단위 작업, ..

Chapter06. 인덱스 06-1. 인덱스의 개념 인덱스는 데이터를 빠르게 찾을 수 있도록 도와주는 도구이다. 인덱스에는 클러스터형 인덱스와 보조인덱스가 있다. 클러스터형 인덱스는 기본키(PK)로 지정하면 자동으로 생성되며 테이블 당 하나만 만들 수 있다. (PK로 지정한 열을 기준으로 자동 정렬함) 보조인덱스는 고유키(unique)로 지정하면 자동 생성하며 여러 개를 만들 수 있지만 정렬은 되지 않는다. 위와 같은 이유로 인덱스는 pk와 unique와 밀접한 관계를 가진다. 인덱스의 장점과 단점 장점 select 문으로 검색하는 속도가 매우 빨라진다. 컴퓨터의 부담이 줄어들어 전체 시스템의 성능이 향상된다. 단점 인덱스도 공간을 차지하기 떄문에 데이터베이스 안에 추가적인 공간이 필요한다. 처음에 인덱..

Chapter05. 테이블과 뷰 05-1. 테이블 만들기 GUI 환경에서 테이블 만들기 데이터베이스 생성하기 데이터베이스를 생성하는 명령어는 'create database naver_db;이다. GUI 환경에서 생성은 오른쪽 마우스를 클릭하면 create schema 라는 버튼이 있는데 그것을 클릭하면 생성할 수 있다. 테이블 생성하기 member테이블을 GUI 환경에서 생성하려면 naver_db 데이터베이스를 확장 후 tables를 선택하고 오른쪽 마우스를 클릭하면 아래와 같이 create table 버튼을 볼 수 있다. create tables 버튼을 클릭하면 다음과 같은 화면을 볼 수 있는데 이 화면에서 column name과 datatype 등 설정을 한 후 apply 버튼을 클릭하면 테이블을 생..
- Total
- Today
- Yesterday