티스토리 뷰

DATABASE/SQL

[SQL] SELECT

진심스테이크 2018. 4. 17. 14:56

 

Select : 데이터를 조회하는 명령문

 

기본 형태

select 칼럼이름 from 테이블명;

ex) select * from 테이블명;

#*기호는 테이블 내의 모든 내용을 출력

#칼럼에 *이 아닌 특정 부분만 출력하고자 하면 콤마(,)로 구분하여 명시

 

 

where : 원하는 행만 추출 가능

 

기본형태

select 칼럼이름 from 테이블명 where 조건;

조건에 주로 들어가는 내용

1. 비교 연산자

#같지 않다 : <> , != , ^=

2. 문자 데이터 조회

- 문자 데이터는 대소문자 구분

- 기본 형태

select 칼럼이름 from 테이블명 where 칼럼이름='검색할 내용';

  #문자 데이터를 ' '안에 넣지 않으면 칼럼 이름으로 인식

3. 날짜 데이터 조회

 

 


 

 

예시

 

- 테이블 생성과 테이블 구조 표시

create table emp(
EMPNO number(5),
ENAME varchar2(10),
SAL number(5),
HIREDATE date
);

desc emp;

 

 

- 테이블에 내용 추가

insert into emp values(7788,'SCOTT',3000,'18.04.17');
insert into emp values(7839,'KING',5000,'17.06.17');
insert into emp values(7902,'FORD',3000,'16.03.10');

 

 

- 특정 칼럼 표시

select ename from emp;

ENAME 칼럼 표시

 

 

- where : 비교연산자

select * from emp where sal >= 4000;

 

 

 

- where : 문자 데이터 조회

select * from emp where ename='SCOTT';

 

 

- where : 날짜 데이터 조회

select * from emp where hiredate >= '17/01/01';

 

 


 

 

where 조건문과 함께 쓰이는 쿼리문

- AND : 키가 180 ~ 183인 사람의 이름 추출

SELECT name FROM user WHERE height >= 180 AND height <=183;

- BETWEEN

SELECT name FROM user WHERE height BETWEEN 180 AND 183;

 

- LIKE : 연속되는 값 추출

SELECT name FROM user WHERE addr='경남' OR addr='전남' OR addr='경북';

- IN : 이산적인 값 추출

SELECT name FROM user WHERE addr IN('경남', '전남', '경북');

 

- LIKE : 문자열의 내용 검색

SELECT name FROM user WHERE name LIKE '김%';
SELECT name FROM user WHERE name LIKE '_종신';

 

- 서브쿼리 : 쿼리문 안에 또 쿼리문이 들어 있는 것

SELECT name FROM user WHERE height > (SELECT height FROM user WHERE name='김경호');

 

- ANY : 서브 쿼리의 여러개의 결과 중 한가지만 만족

- SOME : ANY와 동일

- ALL : 서브쿼리의 여러개의 결과를 모두 만족

 

'DATABASE > SQL' 카테고리의 다른 글

[SQL] SQL PLUS 명령어  (0) 2018.04.17
[SQL] ORDER BY  (0) 2018.04.17
[SQL] 연산자  (0) 2018.04.17
[SQL] 명령어  (0) 2018.04.17
[SQL] BASIC THINGS  (1) 2018.04.17
댓글