본문 바로가기

Database/SQL

2. SQL SELECT문 - 1.기본

기초


SELECT문을 사용하여 테이블의 데이터를 가져올 수 있다.

이를 위하여 최소 2개의 정보가 필요하다.

즉, 어디에서[Table] 무엇을[Field] 가져올 지를 정해야 한다.


구문

** RED : 필수

** GREEN : 옵션


SELECT 열이름, ...

FROM 테이블 이름, ...

WHERE ...

UNION ...

GROUP BY ...

HAVING ...

ORDER BY ...


**********************

 EXAMPLES PART 1

**********************


EX.1

SELECT product_name

FROM Prooducts ;


Product 테이블에서 product_name 필드[열]을 가져온다.

* 공백 : 불필요한 공백은 무시된다.

* 세미콜론(;)을 사용하여 문을 종결한다.

* 대소문자는 구별하지 않는다.(즉, SELECT나 select나 같다) 단, Field Name의 경우는 대소문자를 구별하는 경우도 있다.



EX.2

SELECT product_id, product_name, product_price

FROM Products ;


Product 테이블에서 3개의 필드를 가져오며, 각 픽드는 콤마(,)로 구분하였다.



EX.3

SELECT *

FROM Products ;


와일드카드 문자(*)를 사용하여 Products 테이블에서 모든 필드를 가져온다.




**********************

 EXAMPLES PART 2

**********************


EX.1

SELECT product_name

FROM Products

ORDER BY product_name ;


* Products 테이블에서 product_name 필드를 가져와서 오름차순으로 정렬한다.

** 별도의 지정이 없을 경우, 오름차순 정렬이다.


EX.2

SELECT product_name

FROM Products

ORDER BY product_id ;


* Products 테이블에서 product_name 필드를 가져와서 product_id 순서로 정렬한다.

** 위의 예와 같이 정렬[ORDER BY}은 꼭 가져온 필드를 이용하여 할 필요는 없다.


EX.3

SELECT product_id, product_name, product_price

FROM Products

ORDER BY product_price, product_name ;


* Products 테이블에서 product_id, product_name, product_price 3개의 필드를 가져온 후 먼저 product_price 순서에 따라 정렬하고, 다음에 product_name의 순서에 따라 정렬한다.


EX.4

SELECT product_id, product_name, product_price

FROM Products

ORDER BY 2,3 ;


* Products 테이블에서 product_id, product_name, product_price 3개의 필드를 가져온 후 먼저 두 번째로 가져온 product_name 순서에 따라 정렬하고, 다음으로 3번째로 가져온 열인 product_price의 순서에 따라 정렬한다.

** 상대적인 열의 위치로 정렬순서를 정해 주는 것이다.

*** 이 방법에 의해서는 가져온 열이 아닌 열의 순서로는 정렬할 수 없다.


EX.5

SELECT product_name

FROM Products

ORDER BY product_name DESC;


* Products 테이블에서 product_name 필드를 가져와서 내림차순으로 정렬한다.

* 키워드 DESC는 DESCENDING의 약자이며, DESC 대신 DESCENDING으로 써도 된다.

* 별도 지정이 없으면 오름차순인데, ASC 또는 ASCENDING이라는 키워드를 써도 오름차순으로 정렬된다.


EX.6

SELECT product_id, product_name, product_price

FROM Products

ORDER BY product_price DESC, product_name ;


* Products 테이블에서 product_id, product_name, product_price 3개의 필드를 가져온 후 먼저 product_price 순서에 따라 내림차순으로 정렬하고, 다음에 product_name의 순서에 따라 오름차순으로 정렬한다.