데이타베이스/MySQL

MySQL에서 데이터 조회의 기초: SELECT 문 완벽 가이드

shimdh 2025. 5. 4. 17:54
728x90

데이터베이스 관리 시스템인 MySQL에서 데이터 조회는 매우 중요한 기능입니다. 이 글에서는 SQL의 핵심 명령어인 SELECT 문을 중심으로 데이터 조회의 기본 구조와 다양한 활용 방법에 대해 알아보겠습니다. 이를 통해 데이터베이스 작업의 기초를 다지고, 효율적으로 필요한 정보를 검색하고 활용할 수 있는 방법을 제시합니다.

1. SELECT 문 기본 구조

SELECT 문은 SQL의 가장 기본적인 명령어로, 특정 테이블에서 원하는 데이터를 선택하고 반환하는 데 사용됩니다. 기본 구조는 다음과 같습니다:

SELECT1, 열2, ... 
FROM 테이블명;
  • : 반환할 데이터의 컬럼을 지정합니다. 여러 개의 열을 선택할 수 있습니다.
  • 테이블명: 데이터를 가져올 테이블의 이름을 지정합니다. 이 부분은 어떤 정보를 조회할지를 결정짓는 중요한 요소입니다.

2. 모든 열 선택하기

특정 열 대신 모든 열을 선택하려면 * 기호를 사용할 수 있습니다:

SELECT * 
FROM 직원;

위 쿼리는 '직원' 테이블에 있는 모든 데이터를 반환합니다. 이는 테이블의 모든 정보를 한 번에 확인하고자 할 때 유용합니다.

3. DISTINCT 키워드 사용하기

중복된 결과를 제거하고 싶다면 DISTINCT 키워드를 사용할 수 있습니다:

SELECT DISTINCT 부서 
FROM 직원;

이 쿼리는 '직원' 테이블에서 유일한 부서 목록만 반환하여, 중복된 부서명이 포함되지 않도록 합니다. 이를 통해 데이터의 중복성을 줄이고, 보다 명확한 정보를 제공받을 수 있습니다.

4. WHERE 절로 조건 추가하기

특정 조건에 맞는 데이터만 조회하려면 WHERE 절을 사용할 수 있습니다:

SELECT * 
FROM 직원 
WHERE 나이 > 30;

위 쿼리는 나이가 30세 이상인 직원들의 정보를 반환합니다. 이를 통해 특정 조건에 부합하는 데이터만을 필터링하여 효율적으로 조회할 수 있습니다.

5. ORDER BY 절로 정렬하기

조회한 결과를 정렬하고 싶다면 ORDER BY 절을 추가할 수 있습니다:

SELECT * 
FROM 직원 
ORDER BY 이름 ASC;

이 쿼리는 '직원' 테이블의 데이터를 이름 기준으로 오름차순(ASC)으로 정렬하여 반환합니다. 정렬 기능을 활용하면 데이터의 가독성을 높이고, 원하는 정보를 더 쉽게 찾을 수 있습니다.

6. LIMIT 절로 결과 제한하기

결과 행 수를 제한하려면 LIMIT 절을 사용할 수 있습니다:

SELECT * 
FROM 직원 
LIMIT 5;

위 쿼리는 첫 다섯 개의 행만 반환하게 되어, 대량의 데이터 중에서 필요한 정보만을 간편하게 확인할 수 있도록 도와줍니다.

7. 실용적인 예제

가상의 '학생'이라는 테이블이 있다고 가정해 보겠습니다. 이 테이블은 다음과 같은 필드를 포함하고 있다고 합시다:

  • 학생ID (student_id)
  • 이름 (name)
  • 전공 (major)
  • 성적 (grade)

7.1 모든 학생 정보 조회

SELECT *
FROM 학생;

7.2 전공이 "컴퓨터 공학"인 학생들 조회

SELECT *
FROM 학생
WHERE 전공 = '컴퓨터 공학';

7.3 성적 기준으로 내림차순 정렬 후 상위 두 명 출력

SELECT *
FROM 학생
ORDER BY 성적 DESC
LIMIT 2;

결론

기본적인 SELECT 문법은 MySQL에서 데이터베이스와 상호작용하는 데 있어 필수적인 요소입니다. 다양한 옵션(DISTINCT, WHERE, ORDER BY, 및 LIMIT)들을 조합함으로써 필요한 형태로 데이터를 효과적으로 추출할 수 있게 됩니다. 이러한 기초 지식을 바탕으로 더 복잡한 쿼리 작성이나 다른 SQL 기능들을 배우는 데 도움이 될 것입니다. 데이터베이스를 다루는 데 있어 이러한 기본적인 이해는 향후 더 발전된 데이터 분석 및 관리 작업을 수행하는 데 큰 자산이 될 것입니다.

728x90