[SQL SELECT FROM 절 완벽 정리] 데이터 분석의 첫걸음, 기초부터 쉽게 배워보기

데이터를 다루는 사람이라면 한 번쯤은 접하게 되는 언어, 바로 SQL입니다.
SQL(Structured Query Language)은 말 그대로 ‘구조화된 질의 언어’로, 데이터베이스에 저장된 정보를 조회, 수정, 삭제, 추가하는 데 사용됩니다.
그중에서도 가장 기본이자 핵심이 되는 구문이 바로 SELECT ... FROM ...입니다.

이번 글에서는 SQL의 가장 기본이 되는 SELECT 문을 중심으로, 초보자도 바로 이해할 수 있도록 예제와 함께 단계별로 정리해보겠습니다.


1. SELECT FROM의 기본 구조

SQL에서 데이터를 조회할 때 사용하는 기본 문법은 아래와 같습니다.

SELECT 컬럼명
FROM 테이블명;
  • SELECT: 어떤 컬럼(열)을 보고 싶은지 지정합니다.
  • FROM: 데이터를 가져올 ‘테이블 이름’을 지정합니다.

즉,

“어떤 테이블에서 무엇을 보여줄지”를 명령하는 문장입니다.

예를 들어 고객 정보를 저장한 테이블이 CUSTOMERS라면, 다음과 같이 작성할 수 있습니다.

SELECT NAME, CITY
FROM CUSTOMERS;

이 구문은 CUSTOMERS 테이블에서 ‘이름(NAME)’과 ‘도시(CITY)’ 컬럼을 불러옵니다.


2. 전체 컬럼을 조회하고 싶다면?

컬럼 이름을 일일이 적기 귀찮다면 * 기호를 사용할 수 있습니다.

SELECT *
FROM CUSTOMERS;

*는 “모든 컬럼을 보여줘”라는 뜻입니다.
다만 실제 업무 환경에서는 필요한 컬럼만 선택하는 것이 좋습니다.
그 이유는

  1. 속도 저하
  2. 불필요한 데이터 노출
  3. 가독성 저하
    와 같은 단점이 있기 때문입니다.

3. SELECT FROM + WHERE: 조건 걸기

모든 데이터를 가져오기보단, 특정 조건을 만족하는 데이터만 보고 싶을 때가 많습니다.
이때 사용하는 구문이 WHERE입니다.

SELECT NAME, CITY
FROM CUSTOMERS
WHERE CITY = 'Seoul';

이 쿼리는 CITY가 ‘Seoul’인 고객만 보여줍니다.

또는 여러 조건을 조합할 수도 있습니다.

SELECT NAME, AGE
FROM CUSTOMERS
WHERE CITY = 'Seoul' AND AGE > 30;

이 구문은 서울에 살면서 30세 이상인 고객만 조회합니다.


4. SELECT FROM + ORDER BY: 정렬하기

조회된 결과를 정렬하고 싶을 때는 ORDER BY를 사용합니다.

SELECT NAME, AGE
FROM CUSTOMERS
ORDER BY AGE DESC;
  • ASC: 오름차순 (기본값)
  • DESC: 내림차순

즉, 위의 예제는 나이가 많은 순으로 고객을 정렬해 보여줍니다.


5. SELECT FROM + LIMIT: 개수 제한

결과가 너무 많을 때는 LIMIT으로 출력 개수를 제한할 수 있습니다.

SELECT *
FROM CUSTOMERS
LIMIT 5;

이 쿼리는 상위 5개의 데이터만 보여줍니다.

참고로 MySQL, PostgreSQL 등에서는 LIMIT을 사용하지만,
Oracle에서는 ROWNUM, SQL Server에서는 TOP 키워드를 대신 사용합니다.


6. SELECT FROM + DISTINCT: 중복 제거

중복된 값을 제거하고 싶을 때는 DISTINCT를 사용합니다.

SELECT DISTINCT CITY
FROM CUSTOMERS;

이 구문은 CUSTOMERS 테이블에 있는 도시 목록에서 중복을 제거해 보여줍니다.


7. SELECT FROM + AS: 컬럼 이름 바꾸기

조회 결과의 컬럼 이름을 보기 좋게 바꾸고 싶다면 AS를 사용합니다.

SELECT NAME AS 고객명, CITY AS 거주지
FROM CUSTOMERS;

결과창에서는 고객명, 거주지라는 이름으로 표시됩니다.
이는 분석 리포트나 대시보드용 SQL을 작성할 때 자주 활용되는 문법입니다.


8. 예시 테이블로 한눈에 정리

CUSTOMER_IDNAMEAGECITY
1김철수35Seoul
2이영희29Busan
3박민수42Seoul
4최지은30Incheon

예시 1

SELECT NAME, CITY
FROM CUSTOMERS;

→ 결과

NAMECITY
김철수Seoul
이영희Busan
박민수Seoul
최지은Incheon

예시 2

SELECT NAME
FROM CUSTOMERS
WHERE CITY = 'Seoul';

→ 결과

NAME
김철수
박민수

9. 정리

문법기능예시
SELECT조회할 컬럼 지정SELECT NAME, AGE
FROM데이터를 가져올 테이블 지정FROM CUSTOMERS
WHERE조건 설정WHERE AGE > 30
ORDER BY정렬ORDER BY AGE DESC
LIMIT결과 개수 제한LIMIT 10
DISTINCT중복 제거SELECT DISTINCT CITY
AS별칭 설정SELECT NAME AS 고객명

마무리

SELECT FROM은 모든 SQL 문법의 출발점입니다.
데이터를 ‘조회한다’는 행위는 분석, 리포팅, 서비스 개선의 첫 단계이기도 합니다.

다음 포스팅에서는 JOIN, GROUP BY, HAVING과 같이
여러 테이블을 연결하거나 데이터를 집계하는 구문을 다뤄보겠습니다.
이 글로 기초를 확실히 다져두면 그다음 단계부터 훨씬 수월해질 거예요.

댓글 남기기