본문 바로가기

MYSQL 예제14

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.
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 트리거&TRIGGER 예제&문제 17 트리거 트리거는 테이블에 삽입 , 수정, 삭제등의 작업을 할때 자동으로 작동되는 개체로 프로시저와 비슷한 모양을 갖는다.하지만 트리거에는 스토어드 프로시저와 달리 IN OUT 매개변수를 사용할 수도 없다. -- 테이블 생성 SELECT * FROM testTbl; create TABLE IF NOT EXISTS testTbl5(id INT, txt VARCHAR(10)); INSERT INTO testTbl5 VALUES(1,'EXID'); INSERT INTO testTbl5 VALUES(2,'AFTERS'); INSERT INTO testTbl5 VALUES(3,'IOI'); DROP TRIGGER IF EXISTS testTrg; DELIMITER //CREATE TRIGGER testTrg -- .. 2016. 12. 20.
MYSQL 뷰&VIEW 예제&문제 15 MySQL 뷰 생성CREATE VIEW 뷰이름AS SELECT문 -- student 테이블로부터 모든 학생의 학번과 학년, 반을 가지고 있는 뷰 테이블을 생성하라 create view student_1as select * from student; select * from student_1; -- 등록한 학생의 학번과 등록년도에 대한 뷰테이블을 생성하라-- create view student_2as select s.stu_no, a.att_yearfrom student s, attend awhere s.stu_no = a.stu_no; select * from student_2; create view v_feeas select stu_no, fee_yearfrom feewhere fee_year is no.. 2016. 12. 19.
MYSQL 스토어드 함수 예제&문제 14 스토어드 함수 사용자가 직접 만들어서 사용하는 함수를 스토어드 함수라고 한다. 개요 DELIMITER $$CREATE FUNCTION NAME (PARAMETER)RETURNS 반환값; BEGIN 이 부분에 프로그래밍 코딩 ;RETURN반환값; END $$DELIMITER; SELECT NAME(); - 스토어드 함수는 프로시저와 달리 IN OUT 을 사용할수 없다. - 스토어드 함수의 파라미터는 모두 입력 파라미터로 사용된다. - 스토어드 함수는 RETURNS문으로 반환할 값의 데이터 형식을 지정하고, 본문 안에서는 RETURN 문으로 하나의 값을 반환 해야 한다. 스토어드 프로시저는 별도의 반환하는 구문이 없고 OUT 파라미터를 이용해서 값을 반환 할 수 있다. - 스토어드 프로시저는 CALL 로 호.. 2016. 12. 16.
MYSQL join&inner join & outer join 예제&문제 11 CREATE table stdTbl(stdName varchar(10) not null primary key,addr char(4) not null); create table clubTbl( clubName VARCHAR(10) not null PRIMARY key,roomNo char(4) not null ); create TABLE stdclubTbl( num int AUTO_INCREMENT not null PRIMARY key,stdName VARCHAR(10) not null,clubName VARCHAR(10) not null,FOREIGN KEY(stdName) REFERENCES stdTbl(stdName),FOREIGN KEY(clubName) REFERENCES clubTbl(clubN.. 2016. 12. 14.
MYSQL 부속질의어 예제&문제 9 -- 적어도 한 번 이상 등록한 학생의 학번과 이름을 출력하라 -- (o)select DISTINCT s.stu_no, s.stu_namefrom student s, fee fwhere s.stu_no = f.stu_no;-- (o)select stu_no,stu_namefrom studentwhere EXISTS(select * from fee where student.stu_no=stu_no);-- 학생중에 동아리의 등급이 일반 회원인 학생의 학번과 이름, 주민번호를 출력하라 -- (o)select s.stu_no, s.stu_name, s.id_num from student s, circle cwhere s.stu_no= c.stu_noand c.president=2;-- (o)select stu_.. 2016. 12. 13.
MYSQL select 명령문의 조합 &union 예제&문제 8 -- select 명령문의 조합 -- 학년이 2, 3 학년인 학생의 학번과 이름을 출력하라select stu_no, stu_name,grade from student where grade in (2 ,3); select stu_no, stu_name,gradefrom studentwhere grade = 2unionselect stu_no, stu_name,gradefrom studentwhere grade = 3 -- 적어도 한번 이상 수강신청을 했거나 등록을 한 학생의 학번을 출력하라 select stu_no from attendunionselect stu_nofrom fee; -- 적어도 한번 동아리에 가입했거나,-- 등록을 하고 그리고 수강신청을 한 학생 중에서-- 이상의 조건 중 둘 또는 세가지.. 2016. 12. 12.
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.