mysql select (1)

21
데이터베이스 개론 SELECT 1 NHN NEXT 정호영 나눔고딕 및 나눔고딕코딩 글꼴을 설치해 주세요.

Upload: hoyoung-jung

Post on 22-Jun-2015

571 views

Category:

Engineering


2 download

DESCRIPTION

MySQL Select (1)

TRANSCRIPT

Page 1: MySQL Select (1)

데이터베이스개론

SELECT 1

NHN NEXT 정호영

나눔고딕 및 나눔고딕코딩 글꼴을 설치해 주세요.

Page 2: MySQL Select (1)

오늘 배울것

- SELECT

Page 3: MySQL Select (1)

수업 준비

$ cat run.sh

$ cat select.sql

$./run.sh

Page 4: MySQL Select (1)

SELECT의 사용법

전체테이블(릴레이션)이출력됩니다.

컬럼1과 2만출력됩니다.

전체레코드중에서조건을만족하는레코드의

컬럼1과컬럼2 값이출력됩니다.

M> SELECT * FROM 테이블이름;

M> SELECT 컬럼1, 컬럼2 FROM 테이블이름;

M> SELECT 컬럼1, 컬럼2 FROM 테이블이름 WHERE 조건;

Page 5: MySQL Select (1)

WHERE 조건절

WHERE 뒤에나오는조건절에는

등이올수있습니다.

• >, =, <, >=와 같은부등호

• AND, OR와같은논리연산자

• LIKE를 이용한문자열부분검색

Page 6: MySQL Select (1)

LIKE를 이용한 문자열부분 매칭

문자열의부분매칭을위해사용합니다.

- %: 0개 이상의임의의글자- _ : 1개의임의의글자

- '김%' :김으로시작하는모든문자열- '김_' : 김으로시작하는두글자문자열- '_호%' : 두번째글자가호인문자열

M> SELECT * FROM auction_user WHERE name LIKE '정%';

Page 7: MySQL Select (1)

LIKE를 이용한 문자열부분 매칭

주의사항: '=' 은부분매칭에사용할수없습니다.

# 이름이김으로시작하는사용자정보

M> SELECT * FROM auction_user WHERE name LIKE '김%'

# 이름이김%인사용자정보

M> SELECT * FROM auction_user WHERE name = '김%'

Page 8: MySQL Select (1)

SELECT는 닫힌연산입니다.

SELECT의결과에또다시 SELECT를적용할수있습니다.

Page 9: MySQL Select (1)

SELECT의 결과의종류

(1)스칼라: 단하나의값이나온경우

Page 10: MySQL Select (1)

SELECT의 결과의종류

(2)튜플 : 하나의레코드가결과로나온경우

Page 11: MySQL Select (1)

SELECT의 결과의종류

(3)테이블 : 그외의경우

SELECT 쿼리결과의종류는매우중요!

나중에 ‘중첩 쿼리’ 때 다시~

Page 12: MySQL Select (1)

Q1.

소지금액이 1000원이상 1200원이하인

사용자의아이디, 이름, 소지금액을검색하라.

Page 13: MySQL Select (1)

Q1.

소지금액이 1000원이상 1200원이하인

사용자의아이디, 이름, 소지금액을검색하라.

Page 14: MySQL Select (1)

Q2. 사용자의 등급을검색하라

Q3. 사용자의 등급을중복제외하고검색하라

Q4. 사용자의 등급을 중복되지 않게 알파벳 내림차순으로 정렬해서출력하라

Page 15: MySQL Select (1)

Q2. 사용자의 등급을검색하라

Q3. 사용자의 등급을중복제외하고검색하라

Q4. 사용자의 등급을 중복되지 않게 알파벳 내림차순으로 정렬해서출력하라

*참고: DISTINCT와 ORDER BY는 검색성능을느리게만들가능성이높습니다.

Page 16: MySQL Select (1)

Q5. 이름이 김씨인사람을 출력하세요

Q6. 김씨이면서이름이 세 글자인사람을출력하세요

Page 17: MySQL Select (1)

Q5. 이름이 김씨인사람을 출력하세요

Q6. 김씨이면서이름이 세 글자인사람을출력하세요

Page 18: MySQL Select (1)

Q7. B등급사용자는 몇명인가요?

Q8. 등급별 사용자수를 출력하세요.

Page 19: MySQL Select (1)

기타 쿼리

Q. 몇 시인가요?

Q.

Page 20: MySQL Select (1)

기타 쿼리

Q. 몇 시인가요?

Q.

Page 21: MySQL Select (1)

THANK YOU!!!