본문 바로가기
DataBase/MySQL

MySQL SELECT문 정리 (DB 데이터 조회)

by 코딩이라구 2022. 10. 4.

MySQL SELECT 문 DATABASE 조회/검색

MySQL에서 SELECT문은 데이터베이스(Database)의 원하는 데이터를 조회할 때 사용되는 SQL문입니다. 기본적인 사용법은 검색할 테이블(Table)을 선택하고 조회할 데이터를 조건절(WHERE)에 입력하여 원하는 값의 레코드(행, Row)를 출력합니다.

  • MySQL에서 데이터 조회를 위한 기본적인 SELECT 문법
SELECT *
  FROM 'table_name'
 WHERE 'column_name' = 'column_value';

 


1. SELECT 문 모든 컬럼 조회

  • 검색할 테이블의 모든 컬럼을 출력합니다.
    • SELECT * FROM 'table_name';
/* 예제 : example 테이블의 모든 값을 조회합니다. */
SELECT *
  FROM example;

 


2. SELECT 문 특정 컬럼 조회

  • 검색할 테이블의 컬럼이 너무 많은 경우, 확인하고 싶은 특정 컬럼만 선택하여 출력합니다.
    • SELECT 'column_name1', 'column_name2' ... FROM 'table_name';
/* 예제 : example 테이블의 id, name 컬럼만 조회합니다. */
SELECT id,
       name
  FROM example;

 


3. SELECT 문 조건절(WHERE)을 사용한 조회

  • 검색할 테이블에서 특정 컬럼에서 원하는 값을 가진 레코드를 출력합니다.
    • SELECT * FROM 'table_name' WHERE 'column_name1' = 'column_value1' AND 'column_name2' = 'column_value2';
/* 예제 : example 테이블의 id 컬럼이 3이고 name 컬럼이 홍길동인 레코드를 출력합니다. */
SELECT *
  FROM example
 WHERE id = 3
   AND name = '홍길동';

 


4. SELECT 문 중복값 제거 (DISTINCT)

  • 검색할 테이블에서 특정 컬럼의 중복되는 값은 한 번만 출력합니다.
    • SELECT DISTINCT 'column_name' FROM 'table_name';
/* 예제 : 이름이 중복되는 값은 1번만 출력 */
SELECT DISTINCT name
  FROM example;

 


5. SELECT 문 조회 데이터 정렬 (ORDER BY)

  • 검색할 테이블의 결과 값을 특정 컬럼의 숫자 또는 문자로 정렬하며, 오름차순(ASC) 또는 내림차순(DESC)으로 정렬할 수 있습니다.
  • 설정하지 않을 경우 기본값은 오름차순 정렬입니다.
    • SELECT * FROM 'table_name' ORDER BY 'column_name' 'sort';
/* 예제 : example 테이블의 이름을 오름차순으로 출력 */
SELECT *
  FROM example
 ORDER BY name ASC;

 


6. SELECT 문 별칭(Alias)를 사용

  • 검색할 테이블의 특정 컬럼을 자신이 원하는 컬럼명으로 바꾸어 출력되도록 변경합니다. 주로 너무 긴 컬럼명이나 컬럼명을 숨기고 싶은 경우 해당 별칭을 이용하여 출력할 수 있습니다.
    • SELECT 'column_name' AS 'Alias' FROM 'table_name';
  • 테이블에 별칭을 지정한 경우 조회할 컬럼에 별칭명을 명시해 주어야 합니다.
  • 별칭을 지정할 때 'AS' 예약어의 경우 생략 가능합니다.

1) 별칭 지정 시 'AS' 예약어를 명시한 경우

/* 예제 */
-- id 컬럼에 'no' 별칭을 지정하는 경우
SELECT id AS no
  FROM sample;

-- sample 테이블에 'A' 별칭을 지정하는 경우
SELECT A.id
  FROM sample AS A
 WHERE A.name = '홍길동'
 ORDER BY A.id ASC;

 

2) 별칭 지정 시 'AS' 예약어를 생략한 경우

/* 예제 */
-- id 컬럼에 'no' 별칭을 지정하는 경우
SELECT id no
  FROM sample;

-- sample 테이블에 'A' 별칭을 지정하는 경우
SELECT A.id
  FROM sample A
 WHERE A.name = '홍길동'
 ORDER BY A.id ASC;

 


7. 참고 자료 링크

 


댓글