기본정리 - JDBC Connect
Driver Type : MySQL JDBC Driver
Driver Name : Mysql JDBC Driver
Jar List : mysql-connector-java-5.1.13-bin.jar
Connection URL : jdbc:mysql://localhost:3306/database
/특정 데이터베이스에서 조건 검색을 할때
SELECT * FROM `test`.`pet` where sex ='f';
SELECT * FROM `TEST`.`PET`;
`TEST`,`PET` 에서 모든 데이터 가져오기 (테스트데이터베이스의 PET 테이블에서)
SELECT * FROM PET;
PET 테이블의 모든데이터 가져오기
SELECT * FROM `TEST`.`PET` WHERE NAME = 'BUFFY';
TEST 데이터 베이스의 PET 테이블에서 NAME 항목의 BUFFY 이름만 가져오기
SELECT * FROM `TEST`.`PET` WHERE SEX = 'M';
TEST 데이터 베이스의 PET 테이블에서 SEX 항목중 'M' 을 모두 가져오기
SELECT * FROM `TEST`.`PET` WHERE BIRTH >= '1998-1-1';
TEST 데이터 베이스의 PET 테이블에서 BIRTH 가 1998-1-1 보다 크거나 같은 데이터 모두 가져오기
SELECT * FROM PET WHERE SPECIES = 'DOG' AND SEX = 'M';
PET 테이블에서 SPECIES 가 'DOG' 이며 'SEX' 가 'M' 인 데이터 모드 가져오기
AND 와 OR 를 혼용하여 사용할수 있으나 AND 가 OR 보다 우선 순위가 높다 . 이 두가지 연산자를 모두 사용할 경우에는,
어떤 조건문이 그룹으로 동작되어야 하는지를지정하기 위해 괼호를 사용하는 것이좋다 .
SELECT * FROM PET WHERE (SPECIES = 'CAT' AND SEX = 'F') OR (SPECIES = 'DOG' AND SEX = 'F');
특정 테이블에서 특정 Column 선택하기
SELECT name ,birth FROM pet;
이름과 생일을 pet 테이블에서 가져오기 이름과 생일 을 같이 가져온다
SELECT name Form pet;
pet 테이블에서 이름만 가져온다
SELECT name , birth from pet order by birth;
name birth 를 from pet 테이블에서 가져오되 birth 를 기준으로 정렬하여 기져온다 Sort ascending
SELECT name , birth from pet order by birth desc;
위에 것과 동일하지만 descending sort 를 한다
SELECT name , birth from pet order by species , name desc;
DESC 키워드는 바로 앞에 있는 컬럼 이름 (birth)에만 적용된다는 점을 주목하기 바란다;
이것은 species 컬럼의 정렬에는 관여하지 않는다
select name , birth, curdate(), (year(curdate()) - year (birth)) - (right(curdate(),5)) AS sa
, curdate() as sa1, year (curdate()) as sa2 , right(curdate(),1) as sa3
from pet;
as 문은 여러번에 걸쳐서 사용할수 있다 .
(right (birth,5)) as mo = 생일 항목에서 우측에서 5 번까지 데이터를 mo 에 넣는다 mo 는 임의 데이터 변수
select name , birth, curdate(), year(curdate()) - year(birth) - (right(curdate(),5)) as age from pet order by name;
이것은 order by name 으로 정의 하여 이름 순으로 정렬하여 출력한다
select name , birth, death, (year(death) - year(birth)) - (right(death,5)) as age from pet where death is not null order by name;
죽은 동물의 데이터를 추출하기 위한 방법으로 ...
이름과 생일,죽은날짜 중에서 계산하여 death 가 not null 인걸을 먼저 추출하고 다음 계산식에 의하여 oder by name 으로 sort 한다
select name ,birth , day(birth) as da , month (birth) as mo , year(birth) as ye from pet;
pet 테이블에서 birth 항목에서 날짜를 da 에 월을 mo 에 년을 ye 에 추출한다
select name , birth from pet where month(birth) = 5;
pet 테이블의 birth 에서 월이 5 인걸을 추출한다
이름이 'w' 문자를 가지고 있는 것을 찾고자 하는 경우에는 다음의 쿼리를 사용한다
select * from pet where name Regexp 'w';
regexp = Regular expression
select owner, count(*) from pet group by owner;
이문장은 pet 테이블에서 ownert 가 얼마나 많은 수의 동물을 가지고 있는가를 추출한다
owner 별로 group 으로 추출한다
group by 는 owner 의 모든 기록을 그룹화 하기 위해 사용한다는것을 알아두기 바란다 이렇게 하지 않으면 오류가 발생한다
select owner , count (*) from pet;
errot 1140 (42000) : mixing of Group columns (min(), max(),count(),....)
with no group columns is illegal if there is no group bu clause
select species , count(*) from pet group by species;
종류별로 동물을 세어준다
DELETE FROM `test`.`event` WHERE name like '%';
event 테이블의 name column 항목의 모든 내용을 삭제한다
select pet.name , (year(date) -year(birth)) - (right(date,5)) remark from pet inner join event on pet.name = event.name where event.type = 'littler';
어미가 새끼를 낳은 날짜는 event 테이블에서 가져오구 나이를 계산하기 위해서는 생일을 알아야 하고 이 날짜는 pet 테이블에서 가져온다
pet 테이블의 pet.name , 날짜를 계산해서 remark 에 넣고 inner join on 이것으로 pet.name = event.name 을 조인하고
wehre event.type = 'littler' 조건으로 검색한다
SELECT p1.name, p1.sex, p2.name,p2.sex ,p1.species FROM pet AS p1 INNER JOIN pet AS p2 ON p1.species = p2.species
AND p1.sex = 'f' AND p2.sex = 'm';
SELECT p1.name, p1.sex, p2.name,p2.sex ,p1.species FROM pet AS p1 INNER JOIN pet AS p2 ON p1.species = p2.species
AND p1.sex = 'f' AND p2.sex = 'f';
'test','pet' 데이터 베이스 test 의 pet 테이블에서 sex 항목의 'f' 를 모두 찾을때
/데이터 베이스의 테이블에 데이터 삽입하기
insert into pet values ('Slim','Beny','Snake','m','1996-09-09',null);
/------------------------------------------------------------
insert into `pet` values ('Whistler','Gwen','Bird',null,'1998-09-09',null);
주의 : `pet` 양쪽의 싱글 ` ` (grave 키보드의 좌측 esc 밑에 기호) 따움표 ' ' (키보드의 "" 밑 기호) 과 다름
/------------------------------------------------------------
" , ' = ( Quotation Mark , Doble Quotation Mark) ,( Single Quotation Mark , Apostrophe )
INSERT INTO `test`.`pet` values ('spp','kim','cat',null,'2010-07-07',null);
댓글
댓글 쓰기
질문이나 의견은 요기에 남겨주세요 ^^,,