SQL 기초 3

 | SQL
2009. 6. 20. 03:17
출처 모든 삶의 기록 | 걸투신
원문 http://blog.naver.com/nufe2002/110003759096


조건에 맞는 행 가져오기
 
조건에 맞는 행을 가져오려면 WHERE 절을 사용한다
SELECT title_id, qty FROM sales
중에서 수량이 20 이상인 것만 가져오려면
SELECT title_id, qty FROM sales
WHERE qty >= 20
 
 
 
비교
 
=, >, <, >=, <=, <>, !=, !>, !<
 
 
 
NULL
 
만약 NULL값에 대해 어떤 처리를 하고자 한다면 IS [NOT] NULL 또는 =NULL 등으로 조건을 줄수있다
SELECT title_id, price
FROM titles
WHERE price IS NULL
 
 
 
정렬
 
원하는 컬럼에 대하여 정렬을 하고 싶다면 ORDER BY를 사용한다
SELECT title_id, qty FROM sales
ORDER BY qty
 
 
 
몇 개만 가져오기 (TOP n)
 
전체 중 일부분의 행만 가져오고 싶다면 TOP n을 사용할 수 있다
 
SELECT TOP 6 title_id, qty
FROM sales
 
같은 순위의 것을 모두 가져오고 싶다면 WITH TIES를 사용한다
 
SELECT TOP 6 WITH TIES title_id, qty
FROM sales
ORDER BY qty DESC
 
 
 
범위
 
범위를 주고 데이터를 가져올 때는 BETWEEN을 사용한다
 
SELECT title_id, qty
FROM sales
WHERE qty BETWEEN 10 AND 20
ORDER BY qty
 
 
 
목록
 
특정한 값들만 가져오려면 IN을 사용한다
 
SELECT title_id, qty
FROM sales
WHERE title_id IN ('BU1032', 'BU1111', 'MC3021')
 
 
 
문자열 / LIKE와 패턴 매칭
 
문자열의 비교에 사용되는 pattern matching이라는 것이 있다
패턴 매칭에 사용되는 와일드 카드에 대해 살펴보자
_ : 어떤 것이든 한 문자가 와야한다
% : 아무것도 없는 경우를 포함하여 어떤 것이라도 상관없다
[] :  []안에 있는 글자들
[^] : ^ 다음에 있는 글자는 제외한 다른 것이 와야한다
 
ex)
book_ : books / booka/ booky
book% : book / books / booked
%book% : abook / abooks / book
[st]ring : sing / ting
[b-f]ing : bing / cing / ding / eing / fing
M[^c]% : Mike  / Many / Mickey
이것을 like와 함께 사용하면 된다
 
SELECT title_id, title
FROM titles
WHERE title LIKE '%computer%'
 
 
 
중복된 행 - DISTINCT
 
둘 이상의 중복된 데이터가 있을때 DISTINCT를 사용한다
 
SELECT DISTINCT title_id
FROM sales
ORDER BY title_id
 
 
 
WHERE 절을 사용할 때 고려할 것
 
*를 사용하지 말것 - 많은 부하를 가져오게 된다
 
연산자 앞에는 컬럼만 오도록한다 - WHERE절에 사용하는 컬럼은 무조건 연산자 왼쪽에 두고 더 이상의 가공을 하지 않도록 하는 것이 좋은 습관이다
 
적잘한 ()와 띄워쓰기

'SQL' 카테고리의 다른 글

xp_cmdshell (MS SQL Server 2000)  (0) 2009.08.03
TABLE 정리 스크립트  (0) 2009.07.24
프로시저에서 DTS Package 실행하기  (0) 2009.07.23
SQL 기초 2  (0) 2009.06.20
SQL 기초 1  (0) 2009.06.19
Posted by ProjectGhost

BLOG main image
by ProjectGhost

공지사항

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

Total :
Today : Yesterday :