본문 바로가기

MYSQL 문제11

10 연습문제 적어도 한번 이상 장학금을 받은 학생의 학번을 출력하라"select stu_nofrom fee where jang_total is not null;" 1,500,000원 이상 장학금을 받은 학생의 학번과 이름을 출력하라"select distinct stu_no, jang_totalfrom fee where jang_total >= 1500000;" "select distinct student.stu_no, student.stu_name, jang_totalfrom fee, studentwhere fee.stu_no = student.stu_noand jang_total >= 1500000group by student.stu_no "성별이 남자가 아닌 학생의 학번과 이름을 출력하라"select * from.. 2017. 11. 15.
7 from 절에서 테이블 명세 from 절에서 테이블 명세mysql은 테이블 명세를 두 부분으로 구성한다. 테이블 소유자의 이름 다음에는 테이블의 이름만 오게 된다.즉, from절에서 다른 사람이 생성한 테이블을 참소 할 수 있다는 것을 의미하며, 이때 테이블 이름 앞에 소유자의 이름을 지정해야 한다.하지만 사용자가 테이블의 소유자라면 소유자의 이름은 지정할 필요가 없다.JJY가 생성한 STUDENT 테이블의 전체 내용을 KIM 이 보고자 할 때 적절한 SELECT 문을 완성하여라SELECT * FROM JJY.STUDENT(소유자의 이름과 테이블 사이에는 마침표로 구분되어 있음)JJY.STUDENT는 테이블 명세이다. 소유자를 지정하는 것은 가끔 테이블 이름의 자격으로써 참조 된다. 따라서 위의 예제에서 테이블 이름 STUDENT는.. 2017. 11. 13.
6 select 절 select 명령문은 많은 절로 구성되어 있다.각 select 명령문은 select 와 from 이라는 절을 가지기 때문에 적어도 2개의 절을 가지고 있다.그리고 wehre , grop by , order by 같은 절은 선택적으로 사용된다.절의 순서는 고정되어 있다. 예를 들면 grop by 절은 where 또는 from절 앞에 올 수 없다. 그리고 order by 절이 사용된다면 이 절은 항상 나중에 사용된다. having절은 grop by 절이 사용되어야 만이 사용할 수 있다.- select 명령문 모든 절을 포함한 수행과정sql이 select 명령문을 수행할 때되는 단계를 설명하고 있다.등록 테이블 fee 에서 장학금을 지급 받은 학생의 학번과 장학금 내역을 출력하라select stu_no, ja.. 2017. 11. 13.
4 mysql 테이블 생성 create table 테이블 생성alter table 테이블과 열 변경drop table 테이블 삭제rename 테이블 이름 변경새로운 테이블의 생성#우편번호테이블create table post(post_no varchar(7) Not null, #우편번호post_dong char(30) Not null, #동이름post_address char(60) Not null, #주소ddd char(4), #DDD 전화지역번호primary key (post_no))engine = innoDB; 다음은 학사 데이터 베이스에서 post 테이블을 생성하는 create table 명령문의 예제를 보여주고 있다.테이블의 이름은 post이며, 이 이름은 학사 데이터베이스내에 포함되어 있는 모든 테이블에 대하여 유일한 이름.. 2017. 11. 9.
3 mysql 데이터 타입 및 필수 기능 앞에서 설명한 학사 관리 데이터 베이스를 실제 mysql 상에서 구현하고 이에 필요한 필수적인 기능들에 대해 설명한다.먼저 mysql을 이용하여 데이터 베이스를 생성하기 위해서는 mysql에 데이터 베이스를 생성해야 한다. 하나의 mysql 에는 여러개의 데이터 베이스가 존재할 수 있으며, 각각의 데이터 베이스 이름은 사용자가 지정할 수 있다.데이터 베이스 생성create database haksa;확인show databases;db변경use haksa;인사 테이블 insa 생성 및 데이터 입력create table insa(bunho int(1) auto_increment, name char(8) not null, e_name char(4) not null, town char(6) not null, p.. 2017. 11. 9.
2 학사관리 예제 설명 학사관리에서 사용하는 데이터 베이스로 학생의 신상과 등록, 수강, 성적을 기록하는 데이터베이스에 대하여 설명하고자 한다.- 테이블은 총 9개가 있다.student 학생 신상 테이블attend 수강fee등록테이블score 성적subject 교과목professor교수post 우편circle 동아리department 학과학생테이블은 학생 신상에 관한 데이터로서 이름, 주소, 주민등록번호 같은 내용을 가지고 있다.primary key는 stu_no 학번이고 이 column은 중복 데이터를 생성할 수 없다.테이블은 과거의 데이터를 가지지 않기 때문에, 어떤 학생이 다른 집으로 이사 가면 과거의 주소는 새로운 주소로 대치 된다.다시 말하면, 과거 주소는 다른 곳에서 보유하지 않는다.attend 테이블은 학생의 수강.. 2017. 11. 8.
1 mysql 데이터 생성 삽입 예제 표이름연락처idcity홍길동010-1234-1234102수원이말자010-1234-1235103서울이고순010-1234-1236104대전테이블 생성하기create table example (name varchar(10), phone varchar(15), id varchar(10), city varchar(10));조회select * from example;테이블 확인하기show tables;테이블 다시 생성하기create table example2 (name varchar(10), phone varchar(15), id varchar(10), city varchar(10));이메일 열 추가하기alter table example2 add email varchar(20);테이블 내용 확인하기desc e.. 2017. 11. 8.
예제 소스 CREATE SCHEMA `haksa` ; use haksa; 학사 테이블 만들기#학과테이블create table department(dept_code int(2) Not null, #학과번호dept_name char(30) Not null, #학과명dept_ename varchar(50), #학과영문이름Create_date date default null, #학과생성날짜primary key (dept_code))engine = innoDB; #우편번호테이블create table post(post_no varchar(7) Not null, #우편번호post_dong char(30) Not null, #동이름post_address char(60) Not null, #주소ddd char(4), #DDD 전화.. 2017. 10. 30.
MYSQL 커서&CURSOR 예제&문제 16 커서 커서는 테이블의 여러행을 쿼리한 후에, 쿼리의 결과인 행 집합을 한 행씩 처리하기 위한 방식 순서 : 파일을 연다 -> 처음 데이터를 읽는다. -> 파일의 끝까지 반복한다. -> 파일을 닫는다. 명령어 커서선언 DECLARE CURSOR 반복조건 선언 DECLARE CONTINUE HANDLER(더이상 읽을 행이 없을 경우에, 실행할 내용 설정) 커서 열기 OPEN 커서에서 데이터 가져오기 FETCH(LOOP ~ END LOOP 문으로 반복 구간 지정 ) 데이터 처리 커서닫기 -- 예제 테이블 생성 및 데이타 생성 CREATE TABLE Member ( userid VARCHAR(20), `point` INT) ENGINE = InnoDB ROW_FORMAT = DEFAULT; insert into.. 2016. 12. 20.
MYSQL order by 예제&문제 7 -- 등록한 학생중 등록일자가 2006에 해당하는 학생의 학번과 등록일자를 출력하라 . 이때 정렬순서는 학번으로 한다. -- select stu_no, fee_datefrom feewhere year(fee_date) = 2006order by stu_no; -- 등록한 학생에 대하여 학번과 전체 등록금의 총액을 출력하라. -- 이 때 출력 순서는 등록금 총액이다. select stu_no, sum(fee_total) a from fee group by stu_no order by a ; select stu_no, sum(fee_total) a from fee group by stu_no order by 2 ; -- -- 학적테이블의 영문이름의 첫 번째 문자가 j보다 큰 아스키 코드로 시작하는 학생의 학.. 2016. 12. 9.
MYSQL any&all&in&예제& WHERE 절 문제4 -- 수강신청을 한 학생의 학번과 이름을 출력하라 select DISTINCT s.stu_no,s.stu_namefrom attend a, student swhere a.stu_no= s.stu_no; select stu_no, stu_namefrom studentwhere stu_no in (select stu_no from attend where att_div='Y'); -- 김유미 (1983)보다 나이가 더 많은 각 학생의 학번과 이름 주민번호를 출력하라 select stu_no, stu_name, id_numfrom studentwhere birth_year (select max(fee_pay) from fee where stu_no=20001015); select DISTINCT stu_no f.. 2016. 12. 6.