002_SELECT의 사용과 응용

Dec 05, 2023
002_SELECT의 사용과 응용

SELECT 란 무엇인가?

  • SQL의 가장 기본이 되는 구문으로 'CRUD' 'R(Read)'에 속합니다.
  • DB에 저장된 데이터를 읽을 수 있도록 조회합니다.
  • Table 내의 '단순 자료형'과 '열'을 'Column'이라 합니다.

기본 구조

SELECT (컬럼명) FROM (테이블명);

SELECT의 응용

  • Table의 '모든' Column을 조회
SELECT * FROM (테이블명);
  • Table의 Column에 '별칭'을 주고 조회
SELECT (컬럼명) AS (별칭) FROM (테이블명);
  • Table의 Column끼리의 Data의 '합'을 조회
SELECT (컬럼명1) + (컬럼명2) AS (별칭) FROM (테이블명);
  • Table의 Column을 조회할 때 필요한 Data의 '조건'을 부여하고 조회
SELECT * FROM (테이블명) WHERE (조건);
  • Table의 Data의 '개수'를 조회
-- COUNT(*)의 *의 위치에 '컬럼명'을 넣어도 사용이 가능 SELECT COUNT(*) FROM (테이블명);
  • Table의 Column을 '이상', '이하'로 범위를 지정하여 조회
-- 이상 이하로 범위를 지정 (>, <, >=, <= 로도 대체가 가능) SELECT * FROM (테이블명) WHERE (컬럼명) BETWEEN 70 AND 80;
  • Table의 Column 중 특정 '키워드'를 가진 데이터를 조회
-- %는 입력한 방향의 몇개의 글자가 있던 상관없이 데이터를 조회하고 -- _는 _개수당 한개의 글자에 맞게 데이터를 조회 SELECT * FROM (테이블명) WHERE (컬럼명) LIKE '%김%'; SELECT * FROM (테이블명) WHERE (컬러명) LIKE '_김_'; SELECT * FROM (테이블명) WHERE (컬러명) LIKE '_김%';

조회 예시

기본
'%김%'
'_김%'
'_김_'
김철수
김철수
박김수
박김수
박김수
박김수
에디김
-
에디김
에디김
-
-

  • Table의 Column 중 Data로 'NULL'을 가진 Data만 출력 ('NOT NULL'은 반대)
-- NULL 위치에 NOT NULL도 사용 가능 SELECT * FROM (테이블명) WHERE (컬럼명) IS NULL;
  • Table의 Column 내의 Data를 '오름차순' 또는 '내림차순'으로 정렬하여 조회
-- DESC는 내림차순, ASC는 오름차순이며, 내림차순인 DESC는 생략 가능 SELECT * FROM (테이블명) WHERE (컬럼명) ORDER BY (컬럼명) DESC;
  • Table의 Column 내의 Data 중 '최댓값' 또는 '최솟값'을 조회
-- MIN과 MAX는 기입한 컬럼의 최대값과 최소값이 출력 -- GRUOP BY나 WHERE에서도 사용 가능 WHERE에서 사용시 서브쿼리 활용 SELECT MIN(컬럼명), MAX(컬럼명) FROM (테이블명);
  • Table의 Column 내의 Data 중 '같은 값을 가지는 Data를 묶어서' 조회 ('HAVING'을 사용 시 조건 추가 가능)
-- GROUP BY는 WHERE 같이 HAVING을 사용하여 조건을 추가 가능 SELECT * FROM (테이블명) GROUP BY (컬럼명) = (데이터명); SELECT * FROM (테이블명) GROUP BY (컬럼명) = (데이터명) HAVING (조건식);
  • Table의 Column 내의 Data 중 '같은 값을 가지는 Data를 묶어서' 조회 ('GROUP BY'와 비슷)
-- 같은 컬럼 내에서 같은 데이터를 가진 데이터끼리 묶어줌 SELECT DISTINCT (컬럼명) FROM (테이블명);
Share article

chodong