TIL-210811

3082 단어 TILTIL

Keyword :AWS RDS 실습환경, SELECT, GROUP BY

1. AWS RDS

  • aws 클라우드의 MySQL RDB(Server)를 SQL Workbench(Client)로 접속하여 실습

2. SELECT

  • TABLE에서 레코드를 READ
  • 문법
    SELECT 필드, aggregate함수 적용 
    FROM 테이블
    WHERE 검색하길 원하는 필드의 조건
    GROUP BY 그룹핑할 필드의 속성
    ORDER BY 정렬 기준이 되는 필드, 오름/내림차순
    LIMIT 상위 N개의 레코드만 출력

2. CASE WHEN, NULL

  • CASE WHEN : 필드 값의 변환을 위해 사용
    CASE
      WHEN 필드 값이 ~일때 THEN ~값으로 변환
      ...
      (ELSE 위 경우에 해당하지 않을 경우 ~값으로 변환)
    END 적용 대상 필드
  • NULL : 값이 존재하지 않음
    is NULL / is not NULL
    default값으로 지정 가능
    사칙연산에 사용되면 그 결과는 항상 NULL

3. WHERE operator

  • IN : 여러 값을 묶어서 or 연산 <-> NOT IN
  • LIKE : 대소문자 구분 없이 문자열 매칭
    • WHERE 필드 LIKE 'A%' : 필드에서 A(a)로 시작하는 문자열 검색
    • WHERE 필드 LIKE '%B%' : 필드에서 B(b)가 들어간 문자열 검색
    • NOT LIKE
  • BETWEEN : 날짜 범위에 사용
  • 위 operator들은 CASE THEN에도 사용 가능

4. STRING FUNC

  • LEFT, REPLACE, UPPER, LOWER, LENGHT, LPAD, RPAD, SUBSTRING, CONCAT

6. GROUP BY

  • SELECT 실행시 결과를 특정 그룹별로 묶는 명령
  • 여러 필드로 그룹핑 가능
  • Aggregate함수 : GROUP BY로 특정 필드의 값을 기준으로 그룹화하여 계산
    • SUM, COUNT, AVG, MAX, MIN, GROUP_CONCAT ..
    • COUNT는 NULL을 제외한 레코드 개수 리턴
      • COUNT(DISTINCT 필드[,필드]) : DISTINCT 뒤의 필드들의 조합에서 중복을 제거한 레코드 개수 리턴
      • COUNT(NULL) = 0

7. ORDER BY

  • 필드의 값을 기준으로 오름(ASC), 내림(DSC)차순 정렬
  • 여러 필드를 기준으로 할 수 있음(정렬 우선순위는 왼쪽->오른쪽 필드)
  • NULL 순서(MySQL)
    • ASC : 맨 앞
    • DSC : 맨 뒤

8. TYPE CASTING

  • now() : 현재 시각(UTC=GMT)
  • 타임존 변환
  • DATE, WEEK, MONTH, YEAR, HOUR, MINUTE, SECOND, QUARTER(분기), MONTHNAME,
  • DATEDIFF <-> DATE_ADD
  • STR_TO_DATE, DATE_FORMAT
  • 일반 형 변환
    • cast(category as TYPE)
    • convert(expression, TYPE)

새로 안 것

SELECT DISTINCT 필드 : 필드에서 중복 제거한 레코드 리턴(NULL 포함)
SELECT COUNT(DISTINCT 필드) : 필드에서 중복과 NULL을 제거한 레코드 개수 리턴
CAST,CONVERT로 형변환

좋은 웹페이지 즐겨찾기